引用IBM.Data.DB2中的代码使得程序集不可用于我的其余解决方案

Bob*_*man 7 c# db2 using reference

我有三个组件一个C#控制台应用程序Main,CommonUtilities.

在一个文件Main汇编,Main.cs我也行:

using Utilities;
Run Code Online (Sandbox Code Playgroud)

Common程序集中的目录中,我有DLL IBM.Data.DB2.dll.

Utilities程序集中,我有一个访问所述dll的源模块.公用事业有一个参考IBM.Data.DB2.在这个程序集中的源文件中Util.cs,我有一行:

using IBM.Data.DB2;
Run Code Online (Sandbox Code Playgroud)

如果在此文件的方法中,我对DB2程序集中的代码进行了任何引用,如:

DbConnection c = new DB2Connection( _connectString );
Run Code Online (Sandbox Code Playgroud)

编译Main程序集时出现错误,指出Utilities无法找到命名空间名称.Utilities有或没有线编译罚款.如果我注释掉上面这一行,那么一切都很好.

Bob*_*man 9

一位乐于助人的同事过来了,并在五秒钟内为我解决了这个问题.

事实证明,默认情况下,在VS 2010中创建新的Console应用程序时,它会获得".NET Framework 4 Client Profile"的目标框架.将其更改为".NET Framework 4"使问题消失.