部署C# ReportViewer遇到的坑

摘要:
前些天临时给客户做个工具,统计具体时间点各种车型数据的数量及比重,为了显示方便就用C#来做,因为它有现成的reportviwer控件提供了显示,打印,导出功能。原本我以为这个控件是.netframework里的,做完后直接就发给客户了。ReportViewer不是.netframework提供了,而是visualstudio提供的组件,它依赖如下组件:Microsoft.ReportViewer.Winforms.dllMicrosoft.ReportViewer.Common.dllMicrosoft.ReportViewer.ProcessingObjectModel.dllMicrosoft.ReportViewer.DataVisualization.dllMicrosoft.SqlServer.Types.dllMicrosoft.ReportViewer.WinForms.resources.dllMicrosoft.ReportViewer.DataVisualization.resources.dll只要将这些组件拷到exe目录就行了,去哪里获取呢?可以去微软官网下载reportviewer.exe安装,也可以在自己开发环境下手动找到这些库。

前些天临时给客户做个工具,统计具体时间点各种车型数据的数量及比重,为了显示方便就用C#来做,因为它有现成的reportviwer控件提供了显示,打印,导出功能。原本我以为这个控件是.netframework里的,做完后直接就发给客户了。但昨天客户打电话来说工具打不开,我一看系统日志,是一个未能加载microsoft.ReportViewer.Winforms库的错误,于是我就把项目中自动引用的Microsoft.ReportViewer.Winforms和Microsoft.ReportViewer.Common一并拷过去,软件是能正常打开了,但是在呈现报表是崩溃。

后来折腾了两个小时,终于搞明白了。ReportViewer不是.netframework提供了,而是visual studio提供的组件,它依赖如下组件:

  • Microsoft.ReportViewer.Winforms.dll
  • Microsoft.ReportViewer.Common.dll
  • Microsoft.ReportViewer.ProcessingObjectModel.dll
  • Microsoft.ReportViewer.DataVisualization.dll
  • Microsoft.SqlServer.Types.dll
  • Microsoft.ReportViewer.WinForms.resources.dll
  • Microsoft.ReportViewer.DataVisualization.resources.dll

只要将这些组件拷到exe目录就行了,去哪里获取呢?可以去微软官网下载reportviewer.exe安装,也可以在自己开发环境下手动找到这些库。下面介绍的是手动找的:

1、可在visual studio的目录/ReportViewer下找到Microsoft.ReportViewer.Winforms.dll和Microsoft.ReportViewer.WinForms.resources.dll,Microsoft.ReportViewer.WinForms.resources.dll是一个文本资源库,有许多语言版本,选择其中一个版本就行了,如zh-CHS.

部署C# ReportViewer遇到的坑第1张

2、其它的库可以在windows的库全局缓存目录(C:WindowsassemblyGAC_MSIL)里找到,直接用资源管理器进去是不能拷贝的,需要用shell进去用cp指令拷贝.注意库的版本。

免责声明:文章转载自《部署C# ReportViewer遇到的坑》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇SOA之(1)——SOA架构基础概念AJAX技术框架及开发工具 转下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

随便看看

解决less 版本过高

执行npminstall--无保存加载器。安装less后,在样式中使用less时将报告错误。这是由于less loader版本过高造成的。您可以在package.json中查看less的当前版本。因此,在这种情况下,我们可以先卸载现有的less loader,然后安装less loader的较低版本npmuninstallless loader...

全网最详细的最新稳定OSSEC搭建部署(ossec-server(CentOS7.X)和ossec-agent(CentOS7.X))(图文详解)

OSSEC是一款开源的基于主机的入侵检测系统,可以简称为HIDS。它具备日志分析,文件完整性检查,策略监控,rootkit检测,实时报警以及联动响应等功能。详细的介绍和文档可以参考官网网站:http://www.ossec.net/环境本文中的环境极其简单,两台CentOS7虚拟机。CentOS7的安装详解服务端:  计算机名:ossec-server  I...

Spring Boot 核心配置文件 bootstrap & application

boostrap由父ApplicationContext加载,比applicaton优先加载boostrap里面的属性不能被覆盖3、bootstrap/application的应用场景application配置文件这个容易理解,主要用于SpringBoot项目的自动化配置。这个父级的SpringApplicationContext是先加载的,在加载appli...

C#控件重绘学习(一)

由于需要制作工业控制软件,传统的控制已不能满足实际要求,因此控制的重新绘制迫在眉睫。因为考研花费了很多时间,而C#的学习已经搁浅了很长时间,所以我打算借此机会仔细彻底地研究控件的重新绘制。首先,查看Button的旧背景:namespace:SystemWindows.Forms程序集:System.Windows.FormsButton具有太多属性:例如Ba...

Json对象转Ts类

其次,Json是一种轻量级的数据交换格式。在前端和后端之间的数据交互过程中,后端接口返回Json格式的数据,前端需要使用相应的Ts类对象来接收它。此时,如果后端提供样本数据或现有接口返回的Json格式数据,是否有方法帮助我们从Json格式数据生成Ts类?介绍了三个主要功能。1.查看Json对应的Ts类,将要格式化的Json字符串复制粘贴到中间编辑区域。单击右...

如何在Android模拟器上安装apk文件

如本实例的“mishop_2.0.20130911_1.1.1.apk”3.执行控制台命令,进行安装。切换到D盘,输入D:,然后点击Enter,即切换到D盘,输入cd,找到platform-tools的文件地址,即adb.exe的文件路径。,粘贴在控制台中。...