助けが必要です。
実はこの問題を読んで、解決したと思ったのですが、気になり続けています。
これは、開発環境と本番環境でのさまざまなログインに関するものです。
これは解決策になるはずでした(EFおよびSQL Server):
SqlConnectionStringBuilder builder = new SqlConnectionStringBuilder((model.Connection as EntityConnection).StoreConnection.ConnectionString);
ConnectionInfo ci = new ConnectionInfo();
ci.ServerName = builder.DataSource;
ci.DatabaseName = builder.InitialCatalog;
ci.UserID = builder.UserID;
ci.Password = builder.Password;
report.SetDatabaseLogon(ci.UserID, ci.Password, builder.DataSource, ci.DatabaseName);
foreach (CrystalDecisions.CrystalReports.Engine.Table tbl in report.Database.Tables)
{
TableLogOnInfo logon = tbl.LogOnInfo;
logon.ConnectionInfo = ci;
tbl.ApplyLogOnInfo(logon);
}
エンティティ接続からログイン情報を抽出し、それをレポート内のすべてのテーブルに適用します。それでうまくいくはずです。念のためにSetDatabaseLogon()を追加しましたが、必須ではありません。
これで、本番環境でレポートを実行すると、レポートがデータベースログイン画面にポップアップ表示され、正しいサーバー名(本番サーバー)、データベースの横に何も表示されない(これが私の懸念事項です)、適切なユーザー名、パスワードなしで、ログイン情報の入力を求められます。
入力しましたが、CRに「ログインに失敗しました。もう一度やり直してください」と表示されます。私はWTFを意味します。まったく同じクレデンシャルを使用して、ManagementStudioでデータベースに接続します。
ところで、私はWPFビューアを使用しています。
私は本当にここで立ち往生していて、デバッグを行っており、接続情報はすべての正しいデータを取得しているので、誰が原因であるかを報告する必要がありますが、どうすればよいですか?
どんな助けでもいただければ幸いです。誰かが私の前で同じ問題に遭遇したことを願っています。
よろしく