ReportViewer中设置ServerReport.ReportServerCredentials属性的方法(WEB版)
当使用SSRS技术来布置报表,可能使用MS自带的ReportViewer控件来读取报表.
它分为Web和Windows两种版本;此处Web版.
ServerReport.ReportServerCredentials属性的类型为Microsoft.Reporting.WebForms.IReportServerCredentials,它可提供三种认证方式所需的证书(Credential):
1) Form认证证书(GetFormsCredentials);
2) 扮演认证证书(ImpersonationUser);
3) 网络认证证书(NetworkCredentials).
当报表的服务器端使用网络认证时,需要实现NetworkCredentials接口,而且必须将GetFormsCredentials()接口的返回值设置为False,否则会导致论证失败.
示例代码如下:
2 ''' Initialize report viewer
3 ''' </summary>
4 ''' <remarks>Viewer是ReportViewer的一个实例</remarks>
5 Protected Overridable Sub LoadReportViewer()
6 With Viewer
7 .Visible = True
8 .ProcessingMode = Microsoft.Reporting.WebForms.ProcessingMode.Remote
9 .ServerReport.ReportServerUrl = New Uri(<报表服务器的URL>)
10 .ServerReport.ReportPath = <报表相对于ReportServerUrl的路径>
11 .ServerReport.ReportServerCredentials = <IReportServerCredentials的实例>
12 .ShowParameterPrompts = False
13 End With
14 End Sub
15
16
17 ''' <summary>
18 ''' Internal implementation for report server credentails.
19 ''' </summary>
20 ''' <remarks></remarks>
21 Public Class ReportServerCredentials
22 Implements IReportServerCredentials
23
24 Private _Domain As String
25 Private _Password As String
26 Private _UserName As String
27
28 Public Sub New()
29 Me.New(Nothing, Nothing, Nothing)
30 End Sub
31
32 Public Sub New(ByVal userName As String, ByVal password As String)
33 Me.New(userName, password, Nothing)
34 End Sub
35
36 Public Sub New(ByVal userName As String, ByVal password As String, ByVal domain As String)
37 _UserName = userName
38 _Password = password
39 _Domain = domain
40 End Sub
41
42 Public Property Domain() As String
43 Get
44 Return _Domain
45 End Get
46 Set(ByVal value As String)
47 _Domain = value
48 End Set
49 End Property
50
51 Public Property Password() As String
52 Get
53 Return _Password
54 End Get
55 Set(ByVal value As String)
56 _Password = value
57 End Set
58 End Property
59
60 Public Property UserName() As String
61 Get
62 Return _UserName
63 End Get
64 Set(ByVal value As String)
65 _UserName = value
66 End Set
67 End Property
68
69 Public Function GetFormsCredentials(ByRef authCookie As System.Net.Cookie, ByRef userName As String, ByRef password As String, ByRef authority As String) As Boolean Implements Microsoft.Reporting.WebForms.IReportServerCredentials.GetFormsCredentials
70 '---注意此处必须设置为False,否则论证为失败
71 Return False
72 End Function
73
74 Public ReadOnly Property ImpersonationUser() As System.Security.Principal.WindowsIdentity Implements Microsoft.Reporting.WebForms.IReportServerCredentials.ImpersonationUser
75 Get
76 Return Nothing
77 End Get
78 End Property
79
80 Public ReadOnly Property NetworkCredentials() As System.Net.ICredentials Implements Microsoft.Reporting.WebForms.IReportServerCredentials.NetworkCredentials
81 Get
82 Return New System.Net.NetworkCredential(Me.UserName, Me.Password, Me.Domain)
83 End Get
84 End Property
85 End Class
转载于:https://www.cnblogs.com/beiguren/archive/2010/01/18/1650709.html
ReportViewer中设置ServerReport.ReportServerCredentials属性的方法(WEB版)相关推荐
- HTML中DOM对象的属性和方法的层级关系是怎样的?(目录即层次)
HTML中DOM对象的属性和方法的层级关系是怎样的?(目录即层次) 一.总结 一句话总结:目录就是测试题 1.document取得元素(get element)的方式有哪几种? 解答:四种,分别是id ...
- vb中WindowsMediaPlayer的常用属性和方法
vb中WindowsMediaPlayer的常用属性和方法 enableContextMenu:Boolean 显示/不显示播放位置的右键菜单 fullScreen:boolean 全屏显示 stre ...
- PrintDocument打印、预览、打印机设置和打印属性的方法(较完整)
C# 中打印.预览.打印机设置和打印属性的方法http://www.veryhuo.com 2011-10-08 烈火学院 投递稿件 我有话说private void Form1_Load(objec ...
- vue3-video-play视频组件的使用(一)——基本使用 HTML5中Video标签的属性、方法和事件汇总
vue3-video-play视频组件的使用(一)--基本使用 & HTML5中Video标签的属性.方法和事件汇总 npm地址:https://www.npmjs.com/package/v ...
- win10计算机管理里用户,在Windows10中设置Administrators管理员用户组的方法
Administrators是管理员用户组,它是Win10系统中权限最大的一个组,我们可以把想给予管理员权限的用户放到这个组里,之后,组内的用户可以进行所有涉及权限的操作,如修改用户密码.创建新用户. ...
- 在Qt中设置鼠标光标形状的方法介绍
本文主要介绍在 Qt 中设置鼠标光标形状的方法. 说明: 本文中的应用程序是面向 Windows 操作系统的: 本文中使用的 Qt Creator 版本号为:7.0.0: 本文中使用的 Qt 版本号为 ...
- python程序设置_Windows系统中设置Python程序定时运行方法
Windows系统中设置Python程序定时运行方法 一.环境 win7 + Python3.6 二.步骤 1,在Windows开始菜单中搜索"计划任务",并且点击打开" ...
- Ubuntu 中设置源的几种方法
来源:http://forum.ubuntu.org.cn/viewtopic.php?t=177997 九.设置源 作者:Teliute 来源:基础教程网 Ubuntu里的许多应用程序软件包,是放在 ...
- word整个表格首行缩进_Word2016中设置首行缩进的方法
缩进决定了段落到左右页边距的距离.在Word 2016中,可以使用首行缩进.左缩进.右缩进和悬挂缩进来设置段落的缩进方式.本文介绍了Word2016中设置首行缩进的方法. 默认输入的文档内容都是顶行输 ...
最新文章
- 游戏开发论坛_OPPO开发者大会前瞻:见证OPPO智能服务新生态
- 一个web.Config或app.Config自定义段configSections的示例
- 导出的swf文件显示 不出来地图
- kcp 协议分析 基于udp的可靠协议
- 时间序列分析及应用r语言pdf_R语言:时间序列经典分析法(二)
- 专访:Vmware眼中的虚拟化
- python 24点 tkinter_python_Tkinter使用过程中的一些小的总结
- 软键盘遮挡住popupWindow问题
- 分区字段必须包含在主键字段_十年Java开发经验分享:24 个必须掌握的数据库面试问题...
- 使用seaborn制图(箱型图)
- 四、分布式账本技术对比
- WCDMA为什么上行是干扰受限,下行是功率受限
- 福州计算机专业的大学的校徽,如此好看的大学LOGO,有你的母校吗?
- 2017个人年终总结
- 小米路由器mini刷linux,xiaomi mini路由器安装breed和openwrt固件
- 20170306 小兵的觉悟就是好好吃饭
- 无线智能报警暨家电控制
- 关于大三学生的请教回复
- 最新江苏安全员B考试判断练习题库
- MySQL这一章就够了(一)
热门文章
- composer update 无法执行命令原因及解决方法
- java httpclient 跨域_13、HttpClient服务器跨域请求
- pandas plot label_Python+Pandas | 分析比特币与股票市场的关系
- Linux笔记-利用chkconfig创建脚本使得Rabbimq开机自启
- Arduino学习笔记-新的按键控制方式
- Qt + Python + OpenCV图标替换工具 之 获取颜色及生成图片(二)
- Struts2 访问上下问对象
- 数据结构-线性相关代码
- C/C++ OpenCV之Laplacian边缘检测
- php导出csv带图片,PHP导出CSV文件:刚测试过,这个导出CSV可以