假設我正在名稱空間內部工作,例如Org.Company
,並且此名稱空間包含MyClass
。 我還在導入一個名爲Company
的名稱空間的nuget,其類名爲OtherClass
。Castle Windsor命名空間衝突
所以,當我在我的Org.Company
命名空間裏工作,我不能做到以下幾點:
Company.OtherClass obj;
,因爲編譯器假定我實際上意味着:
Org.Company.Otherclass obj
哪些不存在。
所以,據我所知,而不是使用完全合格的名字,其實我必須導入其他命名空間,例如using Company;
但問題是,我需要從一個引用此OtherClass
XML文件(Castle Windsor配置文件)和完全限定名Company.OtherClass
不起作用。 有沒有辦法解決這個問題?更改名稱空間名稱不是一個可行的選項。
編輯: 這是我對我的溫莎城堡的xml文件
<using assembly="MyProj, Version=1.0.0.0, Culture=neutral" />
...
<component
service="Company.IOtherClass"
type="Company.OtherClass"
/>
我收到以下錯誤:
{"Could not convert string 'Company.OtherClass' to a type. Make sure assembly containing the type has been loaded into the process, or consider specifying assembly qualified name of the type."}
大概是因爲它看裏面Org.Company
相反,在MyProj
組件中定義。
我想如果有一種方式來增加另一個<using />
聲明引用NuGet包這可能是固定......有沒有辦法做到這一點?
Castle Windsor是否返回任何錯誤meesage?或者,您可以在那裏使用完全限定的名稱,包括裝配體? – Pako