0

Entity Framework (v4.4) を使用してデータベースにアクセスする WCF データ サービス (v5.5、匿名) を作成しました。データを取得する Service Operations を作成しました。
私の構成ファイルでは、 Connection String にユーザー ID とパスワードが設定されていません。Context の部分クラスを作成し、必要な ID とパスワードを接続文字列に挿入するコンストラクターを配置しました。私のサービス操作はこのコンテキストを使用するため (そのコンストラクターによって初期化されます)、データベースは特定のユーザーによってアクセスされます。
フェッチは正常に機能しますが、挿入しようとすると例外が発生します:
ユーザー '(null)' のログインに失敗しました。理由: 信頼された SQL Server 接続に関連付けられていません。
ユーザーとパスワードが設定されていないため、明らかに、コンテキストが再作成されたか、接続文字列が再利用されました。
挿入コンテキストが変更された接続文字列を使用するように強制するには、何を変更する必要がありますか?

4

1 に答える 1

1

DataService<> から派生したサービス クラスで CreateDataSource メソッドをオーバーライドし、適切なコンストラクターを使用して作成されたコンテキストを返すことができます。これでこの問題は解決するはずです。

既定では、WCF Data サービスはコンテキストで既定のコンストラクターを呼び出します。

ありがとうプラティック

于 2013-06-26T20:29:25.910 に答える