0

レポート サーバー からレポートにアクセス中に次のエラーが発生しました。レポートにアクセスするために Windows アプリケーションを使用しています。これが私のコードです。

private void rptviewer_Click(object sender, EventArgs e)
        {
            string reportName = "Crime_Traking_Report";
            string reporturl = @"http://13.800.91.136/ReportServer";
            string reportpath = @"/iSROReportsRK7/";
            reportViewer1.ProcessingMode = Microsoft.Reporting.WinForms.ProcessingMode.Remote;
         reportViewer1.ServerReport.ReportServerCredentials = new ReportServerCredentials("isro", "password1209083$", "Rocket");


            try
            {
                reportViewer1.ServerReport.ReportServerUrl = new Uri(reporturl);
            }
            catch (UriFormatException)
            {
                Console.WriteLine("Bad Url format");
            }
            reportViewer1.ServerReport.ReportPath = reportpath + reportName;
            reportViewer1.ProcessingMode = ProcessingMode.Remote;
            reportViewer1.ServerReport.Refresh();

        }


        public  class ReportServerCredentials : IReportServerCredentials
        {
            private string _UserName;
            private string _PassWord;
            private string _DomainName;

            public ReportServerCredentials(string UserName, string PassWord, string DomainName)
            {
                _UserName = UserName;
                _PassWord = PassWord;
                _DomainName = DomainName;
            }




            public System.Security.Principal.WindowsIdentity ImpersonationUser
            {
                get { return null; }
            }

            public ICredentials NetworkCredentials
            {
                get { return new NetworkCredential(_UserName, _PassWord, _DomainName); }
            }
            public bool GetFormsCredentials(out Cookie authCookie, out string user,out string password, out string authority)
            {
                authCookie = null;
                user = password = authority = null;
                return false;
            }

        }

エラー : エラー 1 プロパティまたはインデクサー 'Microsoft.Reporting.WinForms.ServerReport.ReportServerCredentials' を割り当てることはできません -- 読み取り専用です
エラー 2 タイプ 'Daily_Crime_Traking.Form1.ReportServerCredentials' を 'Microsoft.Reporting. WinForms.ReportServerCredentials'

nameConflict の問題を回避するためにクラス名を CustomServerCRedintials に変更してみましたが、この問題を解決するために同じ種類のエラーも発生しました。

4

1 に答える 1

0

これを使用して資格情報を設定します

reportViewer1.ServerReport.SetDataSourceCredentials({ new DataSourceCredentials {
    Name = _DataSourceName,
    UserId =_UserName,
    Password = _PassWord
} })

参照:ServerReport.SetDataSourceCredentialsメソッド

SQL認証を使用したDataSourceCredentialsメンバー
ReportingServicesレポートビューア

于 2012-05-02T10:45:55.840 に答える