例如,假设我正在一个名为的命名空间中工作,Org.Company
并且该命名空间包含MyClass
. 我还导入了一个带有命名空间的 nuget,该命名空间Company
名为OtherClass
.
所以,当我在我的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
程序集中定义的。
如果有办法添加另一个引用 Nuget 包的语句,我认为这可以解决<using />
......有没有办法做到这一点?