2011-10-04 24 views
2

天儿真好,编程方式发现一个ServiceHost的的服务类型

我试着搜索MSDN,在这里,但我不认为我可以做到这一点:

考虑到ServiceHost一个参考,它是有可能发现它正在执行的主机的类型?

ServiceHost host = new ServiceHost(typeof(MyContractImplementation)); 
Type serviceType = host.MagicCallHere(); 
Assert.True(typeof(MyContractImplementation) == serviceType); 

确实MagicCallHere东西存在吗?如果你能躲避反射

加分......

回答

5

您可以检查检查说明服务类型属性:

var serviceType = host.Description.ServiceType 
3

检查如下:

typeof(ServiceContract) == host.Description.ServiceType