Microsoft.Data.Services.Client.dll 与 System.Data.Services.Client.dll
我正在尝试使用 WCF 数据服务,但有点困惑我应该引用哪个库来与 WCF 数据服务交互:Microsoft.Data.Services.Client.dll 或 <强>System.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'
I'm trying to use WCF Data Services and a little confused what library should I reference to interact with WCF Data Services: Microsoft.Data.Services.Client.dll or System.Data.Services.Client.dll.
What is the difference between them? In which case should I use each of them?
When trying to add references to both of them I get a compiler error:
The type
'System.Data.Services.Client.DataServiceContext'
exists in both 'e:\Program Files\WCF
Data Services Mar 2011
CTP2\bin.NETFramework\Microsoft.Data.Services.Client.dll'
and 'e:\Program Files\Reference
Assemblies\Microsoft\Framework.NETFramework\v4.0\System.Data.Services.Client.dll'
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
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
System.Data.Services.Client.dll is part of the base framework that ships with .NET 3.5 and upwards. The Microsoft.Data.Services.Client.dll is an updated version of this library (from your directory paths I see you're using the March 2011 CTP) which is not yet part of the base .NET installation package and contains any new features since the base release.
So if you're looking to use some of the latest features include the Microsoft dll. If you're just after base functionality (that will be 100% supported by anything with the proper .NET framework installed) use the System dll.
Here's a blog article outlining the difference between the Microsoft and System namespaces:
http://blogs.msdn.com/b/brada/archive/2008/11/16/what-does-that-net-namespace-mean-system-and-microsoft.aspx
如果您确实需要使用 system.data.services 和 system.data.services.client,请确保显式删除 microsoft 变体,即右键单击引用 ->右键单击并删除微软的。
If you do need to use system.data.services and system.data.services.client, make sure to explicitly remove the microsoft variants i.e. right-clicking references -> right click and remove the microsoft ones.