我正在开发一个Windows服务,它公开了一个旨在由Silverlight应用程序使用的WCF服务,如本博文中所述:http://mtaulty.com/CommunityServer/blogs/mike_taultys_blog/archive/2008/03/27/10291.aspx
我面临的问题是我需要使用System.ServiceModel.Web.dll
程序集中定义的WebInvoke attribute,但是当我尝试在项目中添加对该程序集的引用时(使用Visual Studio的“添加引用”对话框 - “.NET”选项卡),没有具有该名称的程序集。
所以,我做错了什么,这个程序集不是标准.NET Framework的一部分,或者它是Visual Studio中的一个错误?顺便说一下,我正在使用VS2010 beta 2,该项目的目标是.NET Framework 4。
答案 0 :(得分:98)
您的目标是.NET 4 Full还是Client Profile?后者不包括System.ServiceModel.Web程序集。
答案 1 :(得分:37)
显然,在创建项目时选择.NET framework 4.0时,Visual Studio 2010 Beta 2实际上是针对.NET framework 4 客户端配置文件。使用项目属性将目标框架更改为 .NET framework 4 。
答案 2 :(得分:9)
请查看System.ServiceModel.Web.dll
C:\ Program Files \ Reference 组件\微软\ Framework.NETFramework \ V4.0 \
答案 3 :(得分:6)
我使用Visual Web Developer并面临同样的问题。我的项目已经配置了目标.Net 4.0 Framework。我的案例的解决方案是通过以下方式添加对我的项目的引用:
右键单击References,选择Add Reference并在.Net Tab下找到System.ServiceModel.Web
答案 4 :(得分:3)
检查项目属性,并在“应用程序”选项卡上确保在目标框架组合中选择了完整的“.NET FRAMEWORK”而不是“.NET FRAMEWORK CLIENT PROFILE”。
答案 5 :(得分:-1)
您可以通过以下步骤找到配置。
在解决方案资源管理器中右键单击项目
选择属性
选择左侧的编译 TAB
在编译页面结束时单击高级编译选项* s按钮,这将打开A *高级编译器设置
< / LI>最后一个控件是下拉列表“目标框架(所有配置)
答案 6 :(得分:-6)
将以下参考添加到您的项目
System.ServiceModel.Web.dll
如果您无法在“添加引用”中找到System.ServiceModel.Web,请单击“组件名称”对列表进行排序。