Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 为什么不是';t System.Data.OracleClient是否在.NET 4.0客户端配置文件中可用?_C#_.net - Fatal编程技术网

C# 为什么不是';t System.Data.OracleClient是否在.NET 4.0客户端配置文件中可用?

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

所以我正在做一个项目,它是在框架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=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