1

ASP.NET アプリケーションと VB.NET (フォーム) アプリケーションの間で DLL を共有しようとしています。クライアント アプリケーションは構成ファイルを使用して、接続文字列などの設定を保存します。ASP.NET アプリケーションも同様です。

ASP.NET アプリケーションは System.Web.Configuration 名前空間を使用しますが、VB.NET アプリケーションは System.Configuration 名前空間を使用します。Object クラスから継承していることに気付きました。ポリモーフィズムを使用して DLL で適切な型のインスタンスを作成できるように、両方が共通のクラスから継承されることを期待していました。

ASP.NET および VB.NET アプリケーション間で共有される DLL の構成ファイルを使用するためのベスト プラクティスは何ですか。私はこれを調査し、ASP.NETアプリケーションでSystem.Configurationを使用する必要があることをどこかで読みました.ASPでSystem.Configurationを使用するとweb.configに書き込むことができないため、これを行うべきではないことをどこかで読みました. .NET アプリケーション。web.config に書き込む必要はありません。私はそれを読む必要があります。ベストプラクティスは何ですか?

Update 13/07/2012 DLL には 1 つのクラスが含まれています。クラスには現在、次のような 1 つのコンストラクターがあります。

private connectionString As Sub
Public Sub New()
connectionString = WebConfigurationManager.ConnectionStrings("TestConnection").ConnectionString
End Sub

私は今、クラスに別のコンストラクターを作成して、none Web クライアントが ie を呼び出すことを考えています。

private connectionString As Sub
Public Sub New()
connectionString = connectionString2
End Sub
4

2 に答える 2

3

ホスティング アプリケーションから DLL 関数に引数を渡し、DLL から構成ファイルの依存関係を完全に削除することをお勧めします。

于 2012-07-13T18:39:19.553 に答える
1

この場合、うまく機能したのは、以下を使用してエントリを配置したことです。

<configuration>
  <appSettings>
    <add key="AccessServer" value="\\apollo\all_access_anon\northwind.mdb" />
    ...

そして、次を使用してアクセスします。

NameValueCollection appSettings = ConfigurationManager.AppSettings;
string str = appSettings["AccessServer"];

これは、両方の構成ファイルに共通です。

于 2012-07-13T18:39:45.150 に答える