作成しているASP.NETアプリケーションにリンクする必要があるCrystalReportsが顧客から届いています。私は次のコードを持っています:
LINQDataContext dc = new LINQDataContext();
Order o = dc.Orders.Where(a => a.ID == long.Parse(Request.QueryString["OrderID"])).Single();
SqlConnectionStringBuilder bld = new SqlConnectionStringBuilder(dc.Connection.ConnectionString);
CrystalReportSource src = new CrystalReportSource();
src.ID = "test";
ConnectionInfo myConnectionInfo = new ConnectionInfo();
myConnectionInfo.ServerName = bld.DataSource;
myConnectionInfo.DatabaseName = bld.InitialCatalog;
myConnectionInfo.UserID = bld.UserID;
myConnectionInfo.Password = bld.Password;
src.Report.FileName = o.SalesPersonObject.GetType().GetProperty(Request.QueryString["DeliveryNoteType"]).GetValue(o.SalesPersonObject, null).ToString();
ParameterDiscreteValue param = new ParameterDiscreteValue();
param.Value = long.Parse(Request.QueryString["OrderID"]);
src.ReportDocument.ParameterFields[0].CurrentValues.Add(param);
CrystalReportViewer vw = new CrystalReportViewer();
src.ReportDocument.SetDatabaseLogon(bld.UserID, bld.Password);
vw.HasToggleGroupTreeButton = false;
vw.AutoDataBind = true;
vw.Height = 1268;
vw.Width = 1000;
vw.HasPrintButton = true;
vw.PrintMode = PrintMode.Pdf;
vw.ReportSource = src;
//vw.EnableDatabaseLogonPrompt = false;
vw.HasToggleParameterPanelButton = false;
vw.HasCrystalLogo = false;
vw.RefreshReport();
plcReport.Controls.Add(vw);
ただし、SetDatabaseLogonメソッドを使用してユーザー名/パスワードを設定している場合でも、データベースログインの詳細を入力するように、より具体的にはパスワードを入力するように求めるプロンプトが表示されます。vw.EnableDatabaseLogonPrompt = trueを使用してみましたが、データベースログインの問題が発生します。
何か案は?