我有一個包含一些基本邏輯的類庫項目。C#根據消費者更改DLL app.config
該項目創建的DLL將用於其他一些項目。
我有一個類庫項目中的一個app.config文件與DLL使用的幾個值。
當每個消費者的項目將使用DLL,它有可能改變在App.config
例如值,如果我的DLL的app.config中含有3個設置:A,B,C,則:
該DLL的第一個消費者將具有A =「a」,B =「aa」,C =「aaa」。
該DLL的第二個消費者將有A =「t」,B =「tt」,C =「ttt」。
等等......
從設計的角度來看,什麼是實現這種情況的最乾淨的方法?
(在我看來,app.config應該駐留在使用該DLL的項目中)
感謝您的關注! :)
編輯:
我的大多數DLL中的代碼耗時ASMX的Web服務,其中包括它的.config。每個將使用DLL的應用程序都有自己的WS地址(合同是相同的)。我該如何將應用程序的服務地址注入DLL中?
編輯#2:
現在我有2個配置文件:
1.在類庫項目 - 包含WCF客戶端配置。
2.在使用DLL的應用程序中 - 包含帶有DLL值的配置。
如何從應用程序的配置中將值注入到DLL的配置中(例如,端點的地址)?
類庫沒有得到自己的配置文件。您可以添加一個(或某些工具可能會自動添加一個),但它在運行時未使用。尊重的唯一配置文件是主應用程序的配置文件。 –
你不能在數據庫中保存這些設置嗎?並從消費應用程序中選擇正確的運行時設置? – RubbleFord
@RubbleFord - 不幸的是,由於各種限制,數據庫不是一個選項。那麼這裏最好的做法是什麼? – Sash