网站首页/办公软件列表/内容

Visio Studio 2010 C# WinForm对Report报表身份验证的设置

办公软件2024-02-11阅读
Office Visio 是Office软件系列中的负责绘制流程图和示意图的软件,是一款便于IT和商务人员就复杂信息、系统和流程进行可视化处理、分析和交流的软件。使用 Office Visio 图表,可以促进对系统和流程的了解。

关键词: Visio Studio2010 WinForm Sqlserver2008 ReportingService 报表身份验证

问题分析:

Sqlserver2008自带的Reporting Service报表提供了功能强大,多种样式可供选择的报表服务;利用它自己的Reporting站点,我们可以很方便的输入用户名密码,通过验证,浏览相应的报表;

Visio Studio2010提供了reportViewer控件,可以很方便的实现与站点某个报表的动态绑定;

但这个控件没有提供权限用户名及密码输入的直接接口,这样在浏览是就造成http status 401: Unauthorized…异常,那么我们在WinForm的代码中该做如何设置,以通过报表的身份验证?

我们查询很多中文网站,都没有相应的信息,最后还是一个英文网站找到的解决方案,并通过了测试,展现出来,与大家共享之!

方案:

在C# FormLoad中作如下处理

private void Form2_Load(object sender, EventArgs e)

{

reportViewer1.ProcessingMode=Microsoft.Reporting.WinForms.ProcessingMode.Remote;

?

reportViewer1.ServerReport.ReportPath = @"/Sales/Sales Summary";

reportViewer1.ServerReport.ReportPath = @"/Sales/Customer list";

reportViewer1.ServerReport.ReportServerUrl = new System.Uri(@"http://192.168.1.3/reportserver", System.UriKind.Absolute);

?

this.reportViewer1.ServerReport.ReportServerCredentials.NetworkCredentials = new System.Net.NetworkCredential(@"Bill1", "Password", @"")//这是report服务器上的本地账号

?

this.reportViewer1.ServerReport.ReportServerCredentials.NetworkCredentials = new System.Net.NetworkCredential(@"Bill2", "Pa55word", @"DomainName")//这是域账号

?

reportViewer1.RefreshReport();

?

}

?

测试通过

?

注意:如果出现数据库异常,这可能与您report报表的数据源设置有关系,如果您的数据源设置为windows集成验证,而当前登录用户对数据库没有权限,就会造成数据库连接异常


Visio帮助您创建具有专业外观的图表,以便理解、记录和分析信息、数据、系统和过程。

……

相关阅读