日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

ReportViewer中设置ServerReport.ReportServerCredentials属性的方法(WEB版)

發布時間:2025/3/15 编程问答 18 豆豆
生活随笔 收集整理的這篇文章主要介紹了 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,否則會導致論證失敗.

?示例代碼如下:

?

代碼?1???'''?<summary>
?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版)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。