所以我正在开发一个在框架2.0下的Visual Studio 2005版本中构建的项目.现在我将项目移动到版本下的visual studio 2010 sp1的新版本,并开始意识到他们正在抛出这些依赖的错误和警告,例如
Warning 1 could not be resolved because it has a dependency on "System.Data.OracleClient, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" which is not in the currently targeted framework ".NETFramework,Version=v4.0,Profile=Client".
Run Code Online (Sandbox Code Playgroud)
给我带来的结果是应用程序没有读取我添加的引用,而是更改了框架..Net framework 4.0
问题解决了.测试我将它们更改为.net framework 4.0 client profile
,我意识到构建错误和警告再次出现.
现在我的问题是为什么设置.net 4.0
工作而不是client profile
?? 我需要一个很好的解释,因为我不是这方面的专家.
mil*_*ose 11
客户端配置文件仅包含整个.NET框架的一个子集,该子集应足以制作桌面应用程序,同时使您可以更轻松地使用应用程序重新分发.NET.
正如在介绍客户端配置文件的博客文章中所提到的,客户端配置文件中不包含Oracle客户端功能.这很可能是因为从.NET 4(引入客户端配置文件的同一版本)开始,Oracle客户端已被弃用,您应该逐步停止使用它.(无论如何,它也可能不适合包含在客户档案中.)
如果您需要从应用程序连接到Oracle,您应该定位完整的.NET框架,或者最好使用第三方驱动程序库 - 可能是由Oracle开发而不是由Microsoft开发的驱动程序库 - 它将保持最新状态.(InfoQ关于弃用的文章列出了几种替代方案.)