0

現在の AppDomain の一部にする必要がある DLL があります。app.config/web.config のリストから dll を取得するように AppDomain に通知する方法はありますか?

4

1 に答える 1

3

アセンブリの名前を app.config ファイルに入力し、Assembly.Load オプションとリフレクションを使用して実行時に読み込むことができます。これを行う方法を説明している MSDN 記事へのリンクを次に示します。

http://msdn.microsoft.com/en-us/library/25y1ya39.aspx

基本

  1. アセンブリの名前を app.config ファイルに入れます
  2. ConfigurationManager を使用してエントリを読み取り、名前をプログラムの文字列に取得します
  3. アセンブリの名前を Assembly.Load メソッドに渡します。

リンクからの例:

public class Asmload0
{
    public static void Main()
    {
        // Use the file name to load the assembly into the current
        // application domain.
        Assembly a = Assembly.Load("example");
        // Get the type to use.
        Type myType = a.GetType("Example");
        // Get the method to call.
        MethodInfo myMethod = myType.GetMethod("MethodA");
        // Create an instance.
        object obj = Activator.CreateInstance(myType);
        // Execute the method.
        myMethod.Invoke(obj, null);
    }
}
于 2012-04-22T23:03:27.480 に答える