C# 为什么不是';t System.Data.OracleClient是否在.NET 4.0客户端配置文件中可用?
所以我正在做一个项目,它是在框架2.0下的VisualStudio2005版本中构建的。现在,我将该项目移动到新版本的VisualStudio2010SP1下,并开始意识到他们正在抛出这些错误和警告,例如依赖项C# 为什么不是';t System.Data.OracleClient是否在.NET 4.0客户端配置文件中可用?,c#,.net,C#,.net,所以我正在做一个项目,它是在框架2.0下的VisualStudio2005版本中构建的。现在,我将该项目移动到新版本的VisualStudio2010SP1下,并开始意识到他们正在抛出这些错误和警告,例如依赖项 Warning 1 could not be resolved because it has a dependency on "System.Data.OracleClient, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5
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".
结果是,应用程序没有读取我添加的引用,而是更改了框架.Net framework 4.0
问题已解决。测试时,我将它们更改为.netframework4.0客户端配置文件
,我意识到构建错误和警告再次出现
现在我的问题是,为什么设置
.NET4.0
有效,而不使用客户机配置文件
??我需要一个好的解释,因为我不是这方面的专家 转到项目属性页,将目标框架更改为.NET framework 4
,然后它就可以工作了!客户端配置文件适用于“小型”应用程序,并不安装所有程序集。客户端配置文件仅包括整个.NET framework的一个子集,该子集应足以生成桌面应用程序,同时使.NET与您的应用程序更容易重新分发
如中所述,Oracle客户端功能不包括在客户端配置文件中。这可能是因为(与引入客户机概要文件的版本相同),您应该逐步停止使用它。(无论如何,它也不适合包含在客户概要文件中。)
如果您需要从应用程序连接到Oracle,您应该以完整的.NET framework为目标,或者更倾向于使用第三方驱动程序库—可能是由Oracle开发的,而不是由Microsoft开发的—这将保持最新。(列出了几种备选方案。)该.NET客户端配置文件是.NET完整安装的一个子集,只包含框架的“客户端”部分。服务器功能(如ASP.NET)不存在。这样做的目的是减少.NET Framework的大小和要求 或来自: .NET Framework 4客户端配置文件是.NET Framework 4的一个子集,针对客户端应用程序进行了优化。它为大多数客户端应用程序提供功能,包括Windows演示基础(WPF)、Windows窗体、Windows通信基础(WCF)和ClikOnter特性。这使得针对.NET Framework 4客户端配置文件的应用程序能够更快地部署和更小的安装包 现在,您无法使用客户端配置文件的原因是.NET Oracle提供程序需要的程序集超出了客户端配置文件提供的程序集,因此您的应用程序无法使用客户端配置文件。Duplicate