I have a simple .NET 4.0 web forms app that references the Microsoft.ReportViewer namespace:
<%@ Register assembly="Microsoft.ReportViewer.WebForms, Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" namespace="Microsoft.Reporting.WebForms" tagprefix="rsweb" %>
with a simple ReportViewer control on a page:
<rsweb:ReportViewer runat="server" ProcessingMode="Remote"></rsweb:ReportViewer>
The project references the dll in C:\Program Files......\Microsoft.ReportViewer.dll. The project is currently set to not copy the .dll to bin on Compile.
During deployment, should I change the build action to Copy=true, and copy all the .dll files from the bin directory or should I copy the ReportViewer dll from it's original location? Also, will I need to run some installation on the server (Windows Server 2008, IIS7)?
It appears to be working by just copying over the dll (from either lo开发者_运维问答cation). But, I'm not sure what the normal deploy method is.
There are a couple options.
- You can do as you said, and set the
Copy Local
totrue
. This will copy the DLL in your bin folder. - You can register the DLL in your Global Assembly Cache (GAC). This required that you have access to the server.
To me the choice comes down to control of server and how many projects will use that DLL on your server.
精彩评论