2011-06-19 5 views
0
  • 私は、このアセンブリをロードする必要があり、アプリケーションを再起動する必要なくこのアセンブリを置き換える必要があるというhttphandlerを持っています。
  • このアセンブリには、すべてのクラスが静的メソッドのみを持つユーティリティーなクラスが含まれます。
  • アセンブリをロードした後、私はそのすべてのクラスのメソッドを横断し、次のように辞書に各メソッドのデリゲートを格納します。どのアセンブリローディングメカニズムが私のケースに合う

    MyDictionary.Add("SomeMethodName", 
        (MyDelegate)Delegate.CreateDelegate(typeof(MyDelegate), 
         MyAssembly.GetType("MyNamespace.MyClass").GetMethod("SomeMethod")) 
    
  • 今午前として私の場合で最高の組立ローディング技術がどうなりますかステートレスクラスのみを使用していますか?私はすべての主題は、別のappdomainを作成し、そこにアセンブリをロードしようとしている、これは私のグーグルでは、このスーツ私のケースはありますか?

答えて

1

.NETではアセンブリをアンロードできません。これを行う唯一の方法は、AppDomainのアンロードです。したがって、新しいAppDomainを作成してそこにアセンブリをロードするか(単に読み込んでトラバースするのではなく、アプリドメイン間でマーシャリングを使用する)、アンロードせずにアセンブリを追加する必要があります。

デフォルト以外のAppDomainでの読み込み方法については、hereをご覧ください。

関連する問題