在我們的項目中,我們定義了一個自定義配置部分,在項目中被引用時工作正常。現在我們試圖從一個作爲參考添加的dll引用這個相同的配置部分。從這個DLL中的代碼,我們可以訪問ConfigurationManager.AppSettings,沒有問題,但在訪問配置條目時出錯。從DLL參考加載自定義配置部分
的Web.config代碼
<section name="mailManager" type="FullNamespace, NameSpace" />
<mailManager prop1="propVal1">
<prop2 key1="keyVal1" key2="keyVal2" key3="keyVal3" />
<prop3 key1="keyVal1" key2="keyVal2" />
</mailManager>
其中引用試圖獲取配置部分時,它拋出以下錯誤的DLL。這部分同時存在於dll和主要解決方案代碼庫的解決方案中。
var mailManagerConfigSection = ConfigurationManager.GetSection("mailManager") as EmailManagerConfigSection;
我們得到的錯誤是錯誤CS0433:類型 'EmailManagerConfigSection' 兩個 'namespace1,版本= 1.0.0.0,文化=中立,公鑰=空' 和「namespace2,版本= 1.0.0.0存在,Culture = neutral,PublicKeyToken = null'。
dll引用存在於運行主代碼的相同bin目錄中。無論如何有dll引用主要EmailManagerConfigSection具有值,而不是任何本地的dll是null?我們不想引入任何dll.config文件。
感謝Charles,當我看到ConfigurationManager.AppSettings [「asVal」]獲得條目時,我很希望我可以做出類似的事情,但我可以理解爲什麼這是不可能的。欣賞你的時間。 –
沒問題,樂於幫忙! –