ASP.NET 2.0 Web站点可以引用WCF Web服务吗?

时间:2010-01-15 03:27:23

标签: .net asp.net wcf .net-3.5 asp.net-2.0

我们公司目前有一个部署在Windows 2000操作系统中的网站,这意味着我们只能在该机器上安装.NET 2.0。升级Web服务器操作系统是不可能的,因为此Web服务器还托管我们国家/地区的其他Web应用程序。作为我们IT政策的一部分,出于安全原因,不允许网站直接访问我们数据库的数据。这就是为什么要遵守这些限制,我们有另一个部署了Web服务的服务器。这个“app server”目前安装了.Net 3.5 SP1,因此可以使用WCF服务。

我的问题是,是否可以通过仅托管.NET 2.0的ASP.NET网站在WCF Web服务上添加Web引用。

2 个答案:

答案 0 :(得分:4)

当然可以。如果WCF服务使用basicHttpBinding绑定,那么它将与所有SOAP 1.1客户端兼容,包括“添加Web引用”。

答案 1 :(得分:2)

我在很久以前做过这件事,这是有可能的,但这里有一些我必须克服的绊脚石

  1. 使用[XmlSerializer]代替DataContractSerializer,.net 2.0不包含System.Runtime.Serialization 3.0,这是使用[DataContract] attibute所必需的,这是一个.net 3.0命名空间,并且由于某种原因.net 2.0无法读取使用DataContractSerializer编码的XML
  2. 当您申报服务合同时,即。 [ServiceContract]也声明属性[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1, EmitConformanceClaims = true)]
  3. 您可以使用传输安全性加密数据,需要工作证书
  4. 使用 svcutil 生成服务引用,执行此操作时使用此开关/targetClientVersion:Version30