ASP.NET MVC应用程序展示RDLC报表
学习ASP.NET MVC这样久,在学习,练习与应用过程中,觉得很多知识与以前的ASP.NET多有区别,但是实现操作起来,细处又有许多相近的地方。
本篇跟大家一起学习RDLC报表,是在ASP.NET MVC应用程序中实现。在实现过程中,Insus.NET也将把一些常见的问题列举与提供解决方法。
首先我们在数据库准备数据,表,存储过程等,数据应用以前练习的数据,写一个存储过程好了。

在ASP.NET MVC应用程序目录结构下的Entities下,找到以前写好的一个Entity,添加一个方法即可:

在应用程序的Reports下,开始创建RDLC报表:


选择左边的Table工具,在右边的Design中,拖下一个表格。

放开mouse左键之后,会出现下面的对话框:

如果放开mouse左键之后,上面的对话没有出现,用mouse点击Data表格,如下:

也会出现菜单:

在表格中,选择需要显示的字段,并保存:

接下来,我们创建一个RdlcView.aspx网页,将用来加左RDLC报表:

在RdlcView.aspx.cs,写程序:

在控制器中,创建一个Action,其中,可以看到怎样加载aspx网页,更多相关练习,可以参考:
《念念不忘,ASP.NET MVC显示WebForm网页或UserControl控件》 http://www.cnblogs.com/insus/p/3641610.html
《ASP.NET MVC显示UserControl控件(扩展篇)》http://www.cnblogs.com/insus/p/3642634.html
《ASP.NET MVC加载ASCX之后,并为之赋值》http://www.cnblogs.com/insus/p/3643254.html
《ASP.NET MVC加载用户控件后并获取其内控件值或赋值》http://www.cnblogs.com/insus/p/3644602.html

创建一个视图:

我们浏览看看效果,但在网页运行时,出现一个异常:

参照Heighlight的部分,添加至Web.config中:
<system.webServer>
<handlers>
<add name="ReportViewerWebControlHandler" preCondition="integratedMode"
verb="*" path="Reserved.ReportViewerWebControl.axd"
type="Microsoft.Reporting.WebForms.HttpHandler, Microsoft.ReportViewer.WebForms, Version=11.0.0.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91" />
</handlers>
</system.webServer>
再次运行,又出现另外一个异常:

解决方法,在References,检查相关的Microsoft.ReportViewer.Common和Microsoft.ReportViewer.WebForms版本:

回过头去看看刚才我们拖Reportviewer时,它的版本是什么:

一个是10版本,另一个是11版本,我们移除References的

使用NuGet安装相匹配的版本:

再次浏览,成功了:

点击下一页,又发生一个异常:
错误的信息:
Line: 885
Error: Sys.WebForms.PageRequestManagerServerErrorException: An unknown error occurred while processing the request on the server. The status code returned from the server was: 404
解决它,在ScriptManager语法中,清加一个属性:EnablePartialRendering="false"
点击打印:

它会提示安装ActiveX:
然后,再显示,如下对话框:

还可以导出Word,PDF和Excel:

ASP.NET MVC应用程序展示RDLC报表的更多相关文章
- 在mvc视图中实现rdlc报表展示
需求:在view视图页面中嵌入rdlc报表,rdlc的xml为动态传入的xml字符串.本项目是基于abp框架 可能出现问题: 1.rdlc报表是由asp.net的服务器控件ReportViewer来支 ...
- 在mvc视图中实现rdlc报表展示(补充)
上篇: 在mvc视图中实现rdlc报表展示 在上一遍中,由于不知道如何在aspx.cs后台中实例化abp的IxxxAppService.cs的接口,我采取的方式是在视图页中把查询出的数据存储到aspx ...
- asp.net MVC 应用程序的生命周期
下面这篇文章总结了 asp.net MVC 框架程序的生命周期.觉得写得不错,故转载一下. 转载自:http://www.cnblogs.com/yplong/p/5582576.html ...
- [渣译文] 使用 MVC 5 的 EF6 Code First 入门 系列:为ASP.NET MVC应用程序读取相关数据
这是微软官方教程Getting Started with Entity Framework 6 Code First using MVC 5 系列的翻译,这里是第七篇:为ASP.NET MVC应用程序 ...
- [渣译文] 使用 MVC 5 的 EF6 Code First 入门 系列:为ASP.NET MVC应用程序处理并发
这是微软官方教程Getting Started with Entity Framework 6 Code First using MVC 5 系列的翻译,这里是第十篇:为ASP.NET MVC应用程序 ...
- ASP.NET MVC应用程序执行过程分析
ASP.NET MVC应用程序执行过程分析 2009-08-14 17:57 朱先忠 朱先忠的博客 字号:T | T ASP.NET MVC框架提供了支持Visual Studio的工程模板.本文 ...
- Contoso 大学 - 1 - 为 ASP.NET MVC 应用程序创建 EF 数据模型
原文 Contoso 大学 - 1 - 为 ASP.NET MVC 应用程序创建 EF 数据模型 原文地址:Creating an Entity Framework Data Model for an ...
- 使用区域组织 ASP.NET MVC 应用程序
MVC 模式可将应用程序的模型(数据)逻辑与其呈现逻辑和业务逻辑分离. 在 ASP.NET MVC 中,这种逻辑分离还在项目结构中以物理方式实现,在该项目结构中,控制器和视图保存在使用命名约定定义关系 ...
- 为ASP.NET MVC应用程序使用高级功能
为ASP.NET MVC应用程序使用高级功能 这是微软官方教程Getting Started with Entity Framework 6 Code First using MVC 5 系列的翻译, ...
随机推荐
- SQL在declare声明变量
在sql添加的声明变量. declare @local_variable data_type 你需要指定一个变量声明的类型, 能够使用set和select对变量进行赋值, 在sql语句中就能够使用@l ...
- Android 4.0新组件:GridLayout详细说明
于Android 4.0(API 14)它提供了一个新的组件GridLayout,它继承自Linearlayout,用于执行网络格样式布局. 在某些方面,GridLayout与TableLayout和 ...
- IE7,8,9兼容性处理
在IE7根据假设高度文本框中设置,则光标将不会被中心的方法如以下: 添加属性,如:style="line-height:32px\9";能够 假设一个页面有多个TAB交换的物品.而 ...
- Windows在结构Eclipse+Android4.0开发环境
官方搭建步骤: http://developer.android.com/index.html 搭建好开发环境之前须要下载以下几个文件包: 一.安装Java执行环境JRE(没这个Eclipse执行不起 ...
- 玩转Web之Json(三)-----easy ui怎么把前台显示的dataGird中的所有数据序列化为json,返回到后台并解析
最近做一个项目时,需要在dataGird中插入<input>,即文本输入框,当点击提交时,需要把文本框里填的数据返以及其他列的一些信息以json数组的格式返回到后台,虽然我实现了该功能,但 ...
- or1200中IMMU分析(续)
下面内容摘自<步步惊芯--软核处理器内部设计分析>一书 2 IMMU中的特殊寄存器 OR1200处理器中的IMMU包括第2组特殊寄存器,如表10.1所看到的. ITLBW0MRx是指令TL ...
- Leetcode:minimum_depth_of_binary_tree解决问题的方法
一. 称号 并寻求最深的二元相似.给定的二进制树.求其最小深度. 最小深度是沿从根节点,到叶节点最短的路径. 二. 分析 当我看到这个题目时.我直接将最深二叉树的代码略微改了下,把ma ...
- IMP-00013 目前只有 DBA 其他导入能力 DBA 导出的文件
--实例演示 ---system用户导出 C:\Users\ZML>exp system/zml file='D:\zml.dmp' log = 'D:\zml.log' tables = (z ...
- vector和list删除元素
#include <iostream> #include <vector> #include <list> using namespace std; int mai ...
- HDU 1274 展开字符串 (递归+string类)
题目链接:HDU 1274 展开字符串 中文题. 左括号进入DFS函数,右括号return到上一层. 注意return回去的是这个一层递归中的括号中的字母串. AC代码: #include<st ...