5

对于.Net4,以下有什么区别

Uri baseAddress = new Uri("http://localhost:8080/test");
ServiceHost host = new ServiceHost(typeof(TestService), baseAddress);
host.Open();

Uri baseAddress = new Uri("http://localhost:8080/test");
WebServiceHost host = new WebServiceHost(typeof(TestService), baseAddress);
host.Open();

所有的书都推荐使用 webServiceHost,但为什么我看不到区别?

4

2 回答 2

6

类以WebServiceHost类为基础ServiceHost

它带有WebHttpBinding并且WebHttpBehavior默认情况下。(好处是你不需要配置文件,简单使用。)

来自MSDN

当您使用 WebServiceHost 而不是 ServiceHost 时,它将使用基本 HTTP 地址为您自动创建一个 Web 端点,并使用 WebHttpBehavior 配置注入的端点

于 2013-12-23T00:34:42.503 回答
1

当你有服务类型时使用WebServiceHost(Object, Uri[])构造函数,你可以在需要时创建它的新实例,即使你需要一个单例实例。ServiceHost(Object, Uri[])仅当您希望服务主机使用服务的特定单例实例时才使用构造函数。

于 2012-10-14T10:18:57.413 回答