IISによってホストされるWCFサービスを開発中です。私は基本クラスにKnownType属性を追加する必要があります。アセンブリ参照がWeb.configで解決されない
<system.runtime.serialization>
<dataContractSerializer>
<declaredTypes>
<add type="MyBase, MyBaseDll">
<knownType type="MyDerived, MyDerivedDll"/>
</add>
</declaredTypes>
</dataContractSerializer>
</system.runtime.serialization>
しかし、私のマウスがMyBaseの上にあるとき、私は、エラーメッセージが表示されました:KnownType属性を追加する一つの方法は、このようなWeb.configファイルにセクションを追加することです。エラーメッセージは「無効なモジュールの資格:アセンブリの解決に失敗しましたMyBaseDll」です。 MyDerivedDllにも同じエラーメッセージが表示されます。
追加情報:
MyBaseDLL.dllとMyDerivedDLL.dllの両方がIIS/binフォルダにあります。どちらのDLLも.netシステムアセンブリ以外のアセンブリを参照しません
感謝をアセンブリの完全な名前と種類(名前空間とすべて)の完全な名前を与えることを試みました。 IISによってホストされるWCFサーバーのソリューションの元の設計は、/ binフォルダーを明示的に維持することであり、dllのほとんどはweb.configファイルで指定されている拡張dllフォルダーにあります。エラーメッセージが表示されたら、必要なDLLを/ binフォルダにコピーしました。代わりに、プロジェクト設定から必要なdllを参照する必要があります。私の即時の問題は解決されましたが、オリジナルのデザインを保持しなければならない場合、拡張dllフォルダにあるdllをどのように参照しますか? –
どの拡張ビンフォルダですか?どうしたの? –