类型<type>存在于两个DLL </type>中

时间:2009-06-29 11:38:01

标签: c# .net

我在.Net 3.5框架中有1个DLL,在2.0中有另一个DLL。 ListBoxItem类存在于2.0中,我已将3.5 DLL中的类链接到同一名称空间中。

当我尝试编译时,我得到“两者都存在”错误。如何编译并保持相同的结构。

我不想将2.0 DLL引用到3.5以消除此问题,我希望将这些DLL分开。

4 个答案:

答案 0 :(得分:7)

无论如何,这似乎都不是一个好主意,但更改名称空间并完全符合您的使用条件。

否则,你为什么不引用一个dll?

答案 1 :(得分:6)

这也是一个相关的解决方案,您可以在其中定义在您的使用中使用的类型:

https://stackoverflow.com/a/9194582/178620

在处理Extension方法等时,不能使用完全限定名称。

答案 2 :(得分:3)

旧线程但想要在发生此问题的另一个实例中添加。是否在Visual Studio 2010中使用从网站转换为Web应用程序的项目。我开始获得类型&#34; class&#34;存在于... /临时ASP.NET / ... yada ... yada ... yada。

在我的例子中,旧页面使用数据网格显示日期列表,但数据集是类List<MyClass>的列表,而.aspx(不是代码隐藏)中的代码使用的是铸造方法显示的数据项...

<%# ((MyClass)Container.DataItem).MyDate %>

由于某种原因,MyClass触发了类型错误。在整个项目中对任何可能的双类引用等进行完全搜索之后,没有找到任何东西,所以基本上决定看看我是否摆脱了演员而只是采用标准方法从DataItem获取值如下:

<%# DataBinder.Eval(Container.DataItem, "MyDate").ToString()%>

瞧......没有更多的类型存在错误。不太确定为什么这会导致上述错误表现出来(如果有人有任何见解,我们将不胜感激)但问题已经消失......

希望这有助于某人...

戴夫

答案 3 :(得分:2)

将它们分成两个不同的解决方案,一个用于.NET 2.0,另一个用于.NET 3.5。否则,.NET将如何知道如何加载哪一个?