查看 MVC Razor 应用程序中的 rdlc 文件
我尝试在 rdlc Razor 视图中显示。将 ReportViewer 控件嵌入到 ascx 控件中,该控件将传递数据。
问题是,用于绘制报表的 ReportViewer 控件会生成回发,并从 Razor 重新加载页面,我会丢失 Page 对象,而我无法执行回发。
谁能帮助我吗? Razor 中是否有使用 ReportViewer 控件的帮助程序?
I try to show in a view rdlc Razor. Embed the ReportViewer control in an ascx control, which will pass the data.
The problem is that the ReportViewer control to paint the report generates a postback, and reload the page from the Razor, I lose the Page object, which I can not do postback.
Can anyone help me?
Are there any helper to use the ReportViewer Control in Razor?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
这是一个简单的任务。您可以按照以下步骤操作。
创建一个类 ReportData 并添加将其复制到Reports文件夹中。将以下代码添加到类中。
添加另一个类并将其命名为ReportBasePage.cs。在该类中添加以下代码。
将ScriptManager添加到ReportView.aspx页面。现在使用报表查看器访问该页面。在报表查看器中设置属性AsyncRendering="false"。代码如下。
在ReportView.aspx.cs中添加两个NameSpace
将System.Web.UI.Page更改为ReportBasePage。只需使用以下内容替换您的代码即可。
向报告文件夹添加一个文件夹并将其命名为报告。现在将RDLC报告添加到Reports/Report文件夹中,并将其命名为ClosingInventory。 rdlc。
现在添加一个控制器并将其命名为ReportController。在控制器中添加以下操作方法。
添加视图页面,单击ReportViewer控制器。将视图页面命名为 ReportViewer.cshtml。将以下代码添加到视图页面。
添加Iframe。设置Iframe的属性如下
将以下 JavaScript 添加到查看器。
Web.config 文件将以下键添加到 appSettings 部分
添加
key="UnobtrusiveJavaScriptEnabled" value="true"
在 system.web handlers 部分添加以下键
将数据源更改为您自己的。这个解决方案非常简单,我想每个人都喜欢它。
This is a simple task. You can follow the following steps.
Create a Class ReportData and add it to the Reports folder. Add the following code to the Class.
Add another Class and named it ReportBasePage.cs. Add the following code in this Class.
Add ScriptManager to the ReportView.aspx page. Now Take a Report Viewer to the page. In report viewer set the property AsyncRendering="false". The code is given below.
Add two NameSpace in ReportView.aspx.cs
Change the System.Web.UI.Page to ReportBasePage. Just replace your code using the following.
Add a Folder to the Reports Folder and named it Report. Now add a RDLC report to the Reports/Report folder and named it ClosingInventory.rdlc.
Now add a Controller and Named it ReportController. In to the controller add the following action method.
Add a view page click on the ReportViewer Controller. Named the view page ReportViewer.cshtml. Add the following code to the view page.
Add an Iframe. Set the property of the Iframe as follows
Add Following JavaScript to the viewer.
Web.config file add the following key to the appSettings section
add
key="UnobtrusiveJavaScriptEnabled" value="true"
In system.web handlers Section add the following key
Change your data source as your own. This solution is very simple and I think every one enjoy it.