# Using C1 MVC ReportViewer Template

Develop powerful and lightweight web applications using ASP.NET MVC controls. Learn more about the ComponentOne MVC controls in ASP.NET MVC documentation.

## Content

This topic describes how to view a FlexReport in your MVC application using **C1 MVC ReportViewer** template. C1 MVC ReportViewer template provides three different options by which you can preview your report in FlexViewer;

* **Reports in current project**
<br>
    If you are working with **MVC 5** application, you can use the [Reports in current project](/componentone/docs/mvc/online-mvc/workwithcontrols/FlexReportViewer/FlexViewer/FlexViewerQuickStart/ViewReportsCurrentProject) option in the C1 MVC ReportViewer template to add the report to your Visual Studio application, and then view it in FlexViewer.
<br>
    Once you create an application using C1 MVC Report Viewer, it automatically registers the required resources, adds the relevant Web API resources and packages to your application.
* **Report in SSRS server**
<br>
    If you are working with **MVC 5 or ASP.NET Core** Framework applications, you can use the [Report in SSRS server](/componentone/docs/mvc/online-mvc/workwithcontrols/FlexReportViewer/FlexViewer/FlexViewerQuickStart/ViewSSRSReports) option in the C1 MVC Report Viewer template to view the SSRS report in FlexViewer. You can use this option only for the SSRS reports that are hosted on a server.
* **Report in other report service**
<br>
    If you are working with **MVC 3, 4, or ASP.NET Core** Framework applications, you can only use the [Report in other report service](/componentone/docs/mvc/online-mvc/workwithcontrols/FlexReportViewer/FlexViewer/FlexViewerQuickStart/ViewReportsReportService) option in the C1 MVC Report Viewer template to view the report in FlexViewer. You can use this option when your report is hosted on the Web API Service project.
* **Report in ActiveReprots report service**
<br>
    If you are working with **MVC 5 or ASP.NET Core** Framework applications, you can use the Report in ActiveReports report service option in the C1 MVC Report Viewer template to view the ActiveReports in FlexViewer. You can use this option only for the ActiveReports that are hosted on a server.

### Working with C1 MVC ReportViewer

The below steps demonstrates how you can use **C1 MVC ReportViewer** wizard to view a report in FlexViewer control using Visual Studio template.

1. [License your application](/componentone/docs/mvc/online-mvc/workwithcontrols/FlexReportViewer/FlexViewer/FlexViewerQuickStart#license-your-application)
2. [Register Resources](/componentone/docs/mvc/online-mvc/workwithcontrols/FlexReportViewer/FlexViewer/FlexViewerQuickStart#register-resources)
3. [Add Controller](/componentone/docs/mvc/online-mvc/workwithcontrols/FlexReportViewer/FlexViewer/FlexViewerQuickStart#add-controller)

>type=note
> **Note**: The **C1 ASP.NET MVC 5 Web Application** template for ASP.NET MVC Edition automatically registers the required resources, and adds the relevant references and packages to your application. Therefore, you can directly use the **C1 MVC ReportViewer** template if your application is created using **ComponentOne** template.

### License your application

1. In the **Solution Explorer**, right click the project and select **Add \| New Item\.** The **New Item** dialog appears.
2. In the **New Item** dialog, select **C\# \| General** and select **Text File** in the right pane.
3. Name the text file as **licenses.licx**.
4. In the **licenses.licx** file, add the following:

    ```LICENSES.LICX
    C1.Web.Mvc.LicenseDetector, C1.Web.Mvc
    C1.Web.Mvc.Viewer.LicenseDetector, C1.Web.Mvc.FlexViewer
    ```

<br>
>type=note
> **Note**: In case you are working with **ASP.NET Core** application, you can license the resources and your application using the **MESCIUS License Manager Extension**. For more information, see [Licensing](/componentone/docs/mvc/online-mvc/GettingStarted/Licensing) topic.

### Register Resources

Complete the following steps to register the required resources for using ASP.NET MVC FlexViewer control:

1. From the **Solution Explorer**, open the folders **Views \| Shared**.
2. Double click `_Layout.cshtml` to open it.
3. Add the following code between the `<head></head>` tags.

    ```razor
    @Html.C1().Styles()
    @Html.C1().Scripts().Basic().FlexViewer()
    ```

For more information on how to register resources for **FlexViewer**, refer to [Registering Resources](/componentone/docs/mvc/online-mvc/CreatingaNewProject/RegisteringResources).

### Add Controller

Complete the following steps to add controller to your application.

1. Right click the **Controllers** folder and select **Add** \| **New Scaffolded Item...**.
2. In the **Add Scaffold** wizard select **MVC5 Controller - Empty**, and click **Add**.
3. Provide a name to the Controller. For example, we name the controller as **ReportController**.

A new controller is added to the application within the folder **Controllers**.