2009-02-05 62 views
24

所以這是我的問題。如何引用特定程序集中的名稱空間?

  • 我的(測試)項目引用了Castle Windsor和Rhino Mocks。
  • 我創建從Castle.Core.dll組件
  • 實現Castle.Core.Interceptor.IInterceptor在構建犀牛製品類,Ayende使用Castle.Core.Interceptor幷包括犀牛內部的整個織補命名空間。 Mocks.dll

所以,當我嘗試建立,我得到的錯誤

類型 'Castle.Core.Interceptor.IInterceptor' 存在於兩個 「C:\庫\ Rhino.Mocks.dll'和 「C:\圖書館\ Castle.Core.dll」

那麼如何做我指定我想使用IInterceptor實例從Castle.Core.dll而不是犀牛製品包括一個?

+0

我相信,在回答[這裏](http://blogs.msdn.com/abhinaba/archive/2005/11/30/498278.aspx)。 – Bearddo 2009-02-05 18:07:48

回答

38

讓我們在這裏拋出具體的答案,以防某些人稍後再來。 來自文章here

  • 選擇項目引用下的兩個程序集之一(在我的情況下,我選擇了Castle.Core)。點擊F4來調出屬性並輸入別名CastleCore
  • 在有問題的cs文件的頂部放extern alias CastleCore;
  • 引用您的課程CastleCore::Castle.Core.Interceptors.IInterceptor。或者在我的情況下,我只是:

使用cci = CastleCore :: Castle.Core.Interceptors;

,現在可以參考

cci.IInterceptor 
7

您可以使用extern alias別名其中一個程序集來防止不明確性。

+0

哇,這裏沒有太多的信息吧?我不確定這是否適用,但它表示你必須在命令行中執行某些操作。谷歌搜索更多信息... – 2009-02-05 18:09:06

相關問題