Search code examples
visual-studiovisual-studio-2017rdlc

Weird editor of RDLC in Visual studio 2017


I have an rdlc (definition is 2010) and trying to edit it in the Visual studio 2017 (community).

When I open it in the designer (which is an separated extension and require to install)

It ask me to update the RDLC to latest version.

I can edit it in visual studio 2017 after update RDLC.

But edited RDLC CANNOT be rendered (the definition updated to 2016)

http://schemas.microsoft.com/sqlserver/reporting/2016/01/reportdefinition

If I choose not to update, the report viewer can display the report correctly.

Then I try to search why the reportViewer unable to render definition 2016 RDLC.

I found that the reportViewer version in Visual studio 2017 is version 12.

According to information from web, the latest version of report viewer is 14.

And I found there is actually NO WAY to update the report viewer to 14 (at least in community version).

I am curious why the handling of visual studio 2017 can be that bad

The RDLC designer forces us to update the RDLC to 2016 definition in visual studio 2017

But there is no way to update the viewer to render the report with 2016 definition

Installed things: enter image description here enter image description hereenter image description here

Designer ask me to update when trying to view the RDLC in the VS2017 enter image description here

Updated RDLC cannot be rendered in the ReportViewer

If choose not to update, the reportViewer can be displayed, but designer cannot view and edit the RDLCenter image description here


Solution

  • There are a few different components for RDLC in Visual Studio 2017.

    Designer

    Installed as an extension - you need this to edit your reports. I understand this is what you have already:
    Microsoft Rdlc Report Designer for Visual Studio (marketplace.visualstudio.com)

    Projects/Wizards

    A separate extension. Adds the projects and wizards into Visual Studio that you use for creating new projects/reports.

    Microsoft Reporting Services Projects (marketplace.visualstudio.com)

    Extension links only for clarification, you can find them in Visual Studio in:
    Tools -> Extensions and Updates -> Online.

    ReportViewerControl

    For each project you have that uses ReportViewer, you need the ReportViewerControl NuGet package to give you the updated viewer:

    For Winforms (or WPF via a WindowsFormsHost (learn.microsoft.com)):

    Microsoft.ReportingServices.ReportViewerControl.Winforms (nuget.org)

    For ASP.Net (never used personally):

    Microsoft.ReportingServices.ReportViewerControl.WebForms (nuget.org)

    Again, links only for clarification, you can find in Visual Studio in:
    Tools -> NuGet Package Manager -> Manage NuGet Packages for Solution -> Browse.

    Note: Be sure to install the correct nuget packages. If you're coming from VS2015 you might previously have had unofficial packages installed. Check the name carefully (and the link if you need to confirm). Screenshot below:

    enter image description here

    Further info

    Integrating Reporting Services Using the Report Viewer Controls - Get Started (learn.microsoft.com)