0

C# 2010 Windows フォーム アプリケーションが dll に変更され、他のアプリケーションからアクセスされると、linq to sql の問題が発生します。コードを dll として呼び出す目的は、パフォーマンス上の理由と、複数のアプリケーション間でコードを共有するためです。

アプリケーションが単独の場合、正常に動作します。

基本的に、linq to sql がデスクトップにドラッグされると、デフォルトの linq to sql 接続が .net フレームワークによってセットアップされました。ただし、*.designer.cs を変更して system.configuration 名前空間を使用し、system.configuration 名前空間への参照を追加し、デフォルトの linq から sql への接続を変更して、app.config ファイルで取得したデータベース接続を使用しました。また、各プロジェクト ファイル フォルダーの「プロパティ」セクションまたは「設定」セクションで、既定のデータベース接続への参照をすべて削除しました。

ここでの問題は、データベースへのデフォルト設定値が .net フレームワークによってリセットされることです。app.config ファイルの値は使用されなくなりました。

コードを見せて、参照先を教えてください。また、このアプリケーションを app.config ファイルの接続文字列の値にする方法を教えてください。

4

1 に答える 1

1

dll は、それを呼び出すアプリケーションのコンテキストで実行されます。それ自体はアプリケーションではないため、app.config ファイルを指定しても意味がありません。dll によって使用される構成設定は、呼び出し側アプリケーションの .config ファイル (app.config ファイルまたは web.config ファイル) によって提供されます。あなたの場合、dllを使用するアプリケーションには、独自の.configファイルを定義したデータベース接続が必要です。

于 2013-06-23T02:08:24.663 に答える