Microsoft.Data.Services.Client.dll 与 System.Data.Services.Client.dll

Posted

技术标签:

【中文标题】Microsoft.Data.Services.Client.dll 与 System.Data.Services.Client.dll【英文标题】:Microsoft.Data.Services.Client.dll vs System.Data.Services.Client.dll 【发布时间】:2011-08-11 23:52:44 【问题描述】:

我正在尝试使用 WCF 数据服务,但有点困惑我应该参考哪个库来与 WCF 数据服务交互:Microsoft.Data.Services.Client.dllSystem.Data.Services.Client.dll

它们之间有什么区别?在哪种情况下我应该使用它们中的每一个?

当尝试添加对它们的引用时,我得到一个编译器错误:

类型 'System.Data.Services.Client.DataServiceContext' 存在于两个 'e:\Program Files\WCF 数据服务 2011 年 3 月 CTP2\bin.NETFramework\Microsoft.Data.Services.Client.dll' 和 'e:\Program Files\Reference 程序集\Microsoft\Framework.NETFramework\v4.0\System.Data.Services.Client.dll'

【问题讨论】:

【参考方案1】:

System.Data.Services.Client.dll 是 .NET 3.5 及更高版本附带的基本框架的一部分。 Microsoft.Data.Services.Client.dll 是此库的更新版本(从您的目录路径中,我看到您使用的是 2011 年 3 月的 CTP),它还不是基本 .NET 安装包的一部分,并且包含任何新功能自基础版本以来。

因此,如果您希望使用一些最新功能,包括 Microsoft dll。如果您只是在使用基本功能(安装了正确的 .NET 框架的任何东西都将 100% 支持),请使用系统 dll。

这里有一篇博客文章概述了 Microsoft 和 System 命名空间之间的区别: http://blogs.msdn.com/b/brada/archive/2008/11/16/what-does-that-net-namespace-mean-system-and-microsoft.aspx

【讨论】:

【参考方案2】:

如果您确实需要使用 system.data.services 和 system.data.services.client,请确保明确删除 microsoft 变体,即右键单击引用 -> 右键单击​​并删除 microsoft 变体。

【讨论】:

以上是关于Microsoft.Data.Services.Client.dll 与 System.Data.Services.Client.dll的主要内容,如果未能解决你的问题,请参考以下文章