Tom*_*Tom 1 .net c# tuples visual-studio-2010 sharp-snmp
当我尝试构建我的.net 4,c#项目时,我有一个错误.一切都很正常,但是当我添加一个外部参考给定的DLL,它停止工作,就不能建立,抛出这种类型的一些错误:
错误36型 'System.Tuple' 同时存在于 'C:\ Program Files文件\参考大会\微软\ Framework.NETFramework\V4.0\mscorlib.dll中' 和"C:\项目\ PROJECT1\ExternalRefernces\SharpSNMP\SharpSnmpLib .dll'C:\ Projects\Project1\CheckerStore.cs 17 21
注意,我没有对新库做任何事情,只是作为参考添加.有任何想法吗?
您可以通过指定外部别名来解决此问题.在项目中选择SharpSNMP参考.在属性窗口中改变Aliases从global地说SharpSNMP.在你的代码中输入这个
extern alias SharpSNMP;
...
System.Tuple<T1,T2> sysTulpe;
SharpSNMP::System.Tuple<T1,T2> sharpTulpe;
Run Code Online (Sandbox Code Playgroud)
要么
extern alias SharpSNMP;
using SharpSystem = SharpSNMP::System;
...
System.Tuple<T1,T2> sysTulpe;
SharpSystem.Tuple<T1,T2> sharpTulpe;
Run Code Online (Sandbox Code Playgroud)
您可以做的是将目标版本更改为3.5或在SharpSNMPLib中进行一些更改.源可以从这里或这里获取.
您需要进行的更改特别是将System.Tuple类型移动到其他位置.
编辑:
我相信你已经添加了对预编译DLL的引用.不为框架版本4编译的DLL.您需要做的是下载源代码(请参阅上面的链接)并使用目标版本4编译项目.
为什么需要这样做是因为有条件构建参数取决于框架目标版本.SharpSNMPLib System.Tuple用于版本<= 3.5,框架System.Tuple用于版本> = 4.
编辑:
使用框架System.Tuple和SharpSNMPLib.dll重现您的问题.
成功构建针对第4版的SharpSNMPLib.
使用框架System.Tuple和新的SharpSNMPLib.dll成功构建应用程序.
| 归档时间: |
|
| 查看次数: |
3717 次 |
| 最近记录: |