如何硬编码WCF配置?

时间:2012-01-12 09:48:51

标签: c# wcf app-config

我尝试创建硬编码的wcf服务(没有app.config)我尝试了以下

service = new CommService.TwService();

localHost = new ServiceHost(service);

ServiceMetadataBehavior behavior = new ServiceMetadataBehavior();
localHost.Description.Behaviors.Add(behavior);

localHost.AddServiceEndpoint(typeof(IMetadataExchange),
     MetadataExchangeBindings.CreateMexNamedPipeBinding(),
     "net.pipe://localhost/service/mex/");

localHost.Open();

失败了:

  

服务'CommService.TwService'没有应用程序   (非基础设施)端点。这可能是因为没有   找到了您的应用程序的配置文件,或者因为没有   匹配服务名称的服务元素可以在   配置文件,或者因为没有定义端点   服务要素。

1 个答案:

答案 0 :(得分:3)

您只为Mex添加了一个端点,它不会公开服务本身。您需要为服务实现显式添加另一个绑定,例如;

WSHttpBinding binding = new WSHttpBinding();
localHost.AddServiceEndpoint(typeof(CommService.TwService), binding, "http://localhost/service");