你能够通过设置Credentials属性来定义访问SSRS报表所需的用户名和密码。这个属性在在C1SSRSDocumentSource中的SecurityError事件里。
当访问SSRS服务器端因为缺少网络证书而被拒绝时, C1SSRSDocumentSource中的SecurityError事件就会被触发,这样就允许你设定需要的网络证书并重新访问服务器。
在设计器中
- 打开C1SSRSDocumentSource中的事件窗口。
- 双击SecurityError 事件。这样在你的代码中就会产生一个此事件的空的处理块。
在代码中
- 在代码中,像下面所示修改c1SSRSDocumentSource1_SecurityError事件处理块
C# |
拷贝代码
|
private void c1SSRSDocumentSource1_SecurityError(object sender, C1.Win.C1Document.SecurityErrorEventArgs e)
{
var ds = (C1.Win.C1Document.C1SSRSDocumentSource)sender;
ds.Credential = new System.Net.NetworkCredential("myUserId", "myPassword");
e.Retry = true;
}
|
VB |
拷贝代码
|
Private Sub C1SSRSDocumentSource1_SecurityError(sender As Object, e As C1.Win.C1Document.SecurityErrorEventArgs)
Handles C1SSRSDocumentSource1.SecurityError
Dim ds = DirectCast(sender, C1.Win.C1Document.C1SSRSDocumentSource)
ds.Credential = New System.Net.NetworkCredential("myUserId", "myPassword")
e.Retry = True
End Sub
|
- 在上面的代码中,用有效的网络证书为SSRS报表服务器重新设定了"myUserId"和"myPassword"。当你的窗体加载时,C1SSRSDocumentSource组件就会尝试访问定义好的报表。
|
注意:使用不正确的网络证书会抛出一个安全错误。所以你必须定义一个处理块,用该处理块定义正确的网络证书并且重复访问服务器端的操作。 |
- 运行应用程序。