在C#中定义webHttpBinding对象(没有配置文件)

时间:2013-05-23 21:27:53

标签: wcf webhttpbinding

我必须在我的项目中手动配置ServiceReference,因为我的项目使用辅助配置文件,并且我在尝试从该文件读取时遇到了很多问题。我能够通过在客户端上手动定义basicHttpBinding实例来实现工作,如下所示:

var binding = new BasicHttpBinding
{
    Name = "something",
    CloseTimeout = new TimeSpan(0, 1, 0),
    OpenTimeout = new TimeSpan(0, 1, 0),
    ReceiveTimeout = new TimeSpan(0, 10, 0),
    SendTimeout = new TimeSpan(0, 1, 0),
    AllowCookies = false,
    //and so on...
};

但是,我无法通过浏览器对我的Web服务进行测试调用,除非我将服务器端绑定更改为webHttpBinding。使用webHttpBinding,对我的服务的浏览器请求按预期返回序列化数据。但是,来自我的客户端的请求失败,因为他们正在使用basicHttpBinding。

如何定义WebHttpBinding对象而不是BasicHttpBinding对象?我找不到构造函数,即使MSDN中列出了一个构造函数。

1 个答案:

答案 0 :(得分:1)

班级WebHttpBinding位于System.ServiceModel.Web.dll - 您需要添加对它的引用。将来,您可以检查其所在装配的类型MSDN reference