2016-07-07 73 views
0

当初始化ServiceHost时,我只能在我的VS 2012中找到两个构造函数:ServiceHost(Object, Uri[])ServiceHost(Type, Uri[])。但我需要一个没有Uri[]的构造函数,因为我会在app.config中配置地址/绑定/合同。找不到适用于ServiceHost的构造函数

我看到在Pro C#2010演示和.NET 4平台(第五版)

using (ServiceHost serviceHost = new ServiceHost(typeof(XXX))) 
{ 

    serviceHost.Open(); 
    ...... 
} 

但我不能使用此构造,为msdn只提供了两个构造函数:

ServiceHost(Object, Uri[]) 
ServiceHost(Type, Uri[]) 

我认为最好是配置地址app.config而不是Uri[]在构造函数

+1

欢迎来到StackOverflow。请在你的帖子中添加一个实际的问题,因为它不太清楚你在问什么。就像“我该怎么做?” “我只能找到两个构造函数”是什么意思?如果你尝试第三个,如msdn中所述,它是否工作?或者是否发生错误?最好的祝福。 – YakovL

+0

这就是你的建议@YakovL – hawesome

回答

2

第二个参数呃是(基本上)可选的。如果你看的文档,你会注意到以下特征:

public ServiceHost(Type serviceType, params Uri[] baseAddresses) 

注意params关键字在Uri[] baseAddresses参数的前面。 params允许您发送逗号分隔的列表或指定类型的参数数组,或根本没有参数。

因此ServiceHost serviceHost = new ServiceHost(typeof(XXX))只是简单地调用ServiceHost(Type serviceType, params Uri[] baseAddresses)的构造函数,但参数baseAddresses没有参数。

相关问题