2013-12-11 69 views
-2

我正在用C#編寫一個服務,並且我的類庫原始名稱的開頭是:Common。如何更改類庫名稱?

而這個名字與另一個動態鏈接庫衝突:common.logging.dll

我改變了它,但是當我將它引用到另一個庫時,它也是衝突。儘管我將名稱更改爲:jsptpd.commom

這是衝突代碼:

private static readonly Common.Logging.ILog logger = Common.Logging.LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType); 

而且它是在程序的名字顯示的名字,但是當我引用和輸入類常見的,這也提示了舊名稱,而不是common.logging。

如何解決?

衝突:

當我referece的Common.Logging.dll和jsptpd.CommonImpl(舊名是常見的).dll文件。

程序提示:

Namespace jsptpd.common not exists type or namespace "logging",do you lack of dll or reference? 

但是,當我沒有引用jsptpd.CommonImpl(the old name is common).dll記錄可以更正:

Common.Logging.ILog. 
+0

請解釋「衝突」。 – CodeCaster

+0

我不確定你在問什麼,但也許你可以從[使用指令(C#參考)](http://msdn.microsoft.com/en-us/library /sf0df423.aspx)。 –

+0

聽起來我很詫異,你把程序集名稱與命名空間名稱搞混了。這是重要的命名空間名稱。回到那個項目,選一個更好的名字。 –

回答

1

我不知道我完全理解你的問題。

基本上你有兩個叫做Common.Something1和Common.Something2的程序集。當你使用Common.Something1中的類時,你會得到一個錯誤,因爲他假定你在Common.Something2中。

如果你的問題是這個,解決起來很簡單。

在該類的使用區域中,您可以使用別名定義using。

using CommonNamespace1 = Common.Something1; 
using CommonNamespace2 = Common.Something2; 

,並在代碼的其餘部分,你喜歡聲明

private static readonly CommonNamespace1.Logging.ILog logger = CommonNamespace1.Logging.LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType); 

如果這不是你的問題,請詳細更多。

+0

是的,它完全可以解決我的問題!!!謝謝。 – Dolphin