zoukankan      html  css  js  c++  java
  • VS 2005 RDLC报表实现WEB客户端打印(3)

    如何在vs2005的编译环境中对rdlc打印进行部署

    ---------------------------------------------
    具体修改webconfig的方法
    ---------------------------------------------

    1. 找到web.config中的如下几行,将版本号全部从8.0.0.0改为9.0.0.0
    <system.web>
       <httpHandlers>
       <add path="Reserved.ReportViewerWebControl.axd" verb="*" type="Microsoft.Reporting.WebForms.HttpHandler, Microsoft.ReportViewer.WebForms, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"
        validate="false" />
    </httpHandlers>
       <compilation debug="true">
        <assemblies>
         <add assembly="Microsoft.ReportViewer.WebForms, Version=8.0.0.0, Culture=neutral, PublicKeyToken=B03F5F7F11D50A3A"/>
         <add assembly="Microsoft.ReportViewer.Common, Version=8.0.0.0, Culture=neutral, PublicKeyToken=B03F5F7F11D50A3A"/>
    </assemblies>
        <buildProviders>
         <add extension=".rdlc" type="Microsoft.Reporting.RdlBuildProvider, Microsoft.ReportViewer.Common, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"/>
        </buildProviders>
       </compilation>
    </system.web>

    2. 将VS2005为每个页面添加的标记注册说明去掉
    <%@ Register Assembly="Microsoft.ReportViewer.WebForms, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"
        Namespace="Microsoft.Reporting.WebForms" TagPrefix="rsweb" %>

    这里有点小问题,如果我们在asp.net中引用ReportViewer控件之前没有在Web.config中添加标记注册说明,VS会在每个放置了ReportViewer控件的aspx文件中进行控件注册,所以最好的方法是在Web.config中统一进行注册,以免每次都要去删除aspx文件中的注册说明

       <pages>
        <controls>
        <add tagPrefix="rsweb" namespace="Microsoft.Reporting.WebForms" assembly="Microsoft.ReportViewer.WebForms, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"/>
        </controls>
       </pages>

    3.完成所有修改之后再编译发布网站,需要注意的是一定要在发布之前修改,发布之后再修改web.config是不行的。

    4.常见错误
    报表查看器 Web 控件 HTTP 处理程序尚未在应用程序的 web.config 文件中注册。请将 <add verb="*" path="Reserved.ReportViewerWebControl.axd" type = "Microsoft.Reporting.WebForms.HttpHandler, Microsoft.ReportViewer.WebForms, Version=9.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" /> 添加到 web.config 文件的 system.web/httpHandlers 部分。
    出现这个错误的原因是只要在VS2005中对插入了报表的aspx文件进行了编辑,VS就会自动将刚才我们改过的版本号改回8.0.0.0,再改回来就好了,不过这样改来改去也麻烦,最好的方法是使用在3步中提到的方法,对控件进行统一注册。

  • 相关阅读:
    不忘初心,方得始终
    【读书笔记】Windows核心编程
    工作心得
    2015年随记
    微信开发的黑魔法
    [cssTopic]浏览器兼容性问题整理 css问题集 ie6常见问题【转】
    获取微信用户openid
    Spring Boot应用开发起步
    一种在Java中跨ClassLoader的方法调用的实现
    H5语义化标签
  • 原文地址:https://www.cnblogs.com/tzy080112/p/1450385.html
Copyright © 2011-2022 走看看