2012-02-08 87 views
0

我有一個控制檯應用程序作爲WCF服務的託管。現在,我將爲管理目的添加另一個WCf服務。所以,這裏是我的代碼:在一個控制檯應用程序中託管的兩個WCF服務

[ServiceContract] 
public interface IServiceAdmin 
{ 
    [OperationContract] 
    int GetCount(); 
} 

[ServiceBehavior(ConcurrencyMode = ConcurrencyMode.Multiple, InstanceContextMode = InstanceContextMode.Single)] 
public class ServiceAdmin : IServiceAdmin 
{   
    public int GetCount() 
    { 
     // It's just a stub to go on 
     return 1; 
    } 
} 

這裏是App.config摘錄應用於服務:

<serviceBehaviors> 
    <behavior name="MyService.ServBehavior"> 
     <dataContractSerializer maxItemsInObjectGraph="2147483646"/> 
     <serviceMetadata httpGetEnabled="false" /> 
     <serviceDebug includeExceptionDetailInFaults="true" /> 
    </behavior> 
    </serviceBehaviors> 
</behaviors> 
<services> 
<service behaviorConfiguration="MyService.ServBehavior" name="MyService.MyServ"> 
    <endpoint address="MyServ" behaviorConfiguration="" binding="netTcpBinding" contract="MyService.IMyServ" isSystemEndpoint="false" /> 
    <endpoint address="mex" binding="mexTcpBinding" contract="IMetadataExchange" /> 
</service> 
<service behaviorConfiguration="MyService.ServBehavior" name="MyService.MyServAdmin"> 
    <endpoint address="MyServ" behaviorConfiguration="" binding="netTcpBinding" contract="MyService.IServiceAdmin" isSystemEndpoint="false" /> 
    <endpoint address="mex" binding="mexTcpBinding" contract="IMetadataExchange" /> 
</service> 

,這裏是我如何讓服務啓動:

static void Main(string[] args) 
{ 
ServiceHost myserviceHost = new ServiceHost(typeof(MyServ), new Uri("net.tcp://192.168.1.40:8730/")); 
myserviceHost.Open(); 

ServiceHost myAdminHost = new ServiceHost(typeof(AServiceAdmin), new Uri("net.tcp://192.168.1.40:31337/"); 
myAdminHost.Open(); 

Console.ReadLine(); 
} 

的問題是,常規服務工作正常(元數據交換可以提供關於服務方法的信息)和另一項服務(我在開始時提到,管理服務)根本沒有任何作用。 這是它的原因嗎?

在此先感謝!

+0

還回答了在此鏈接: [http://stackoverflow.com/questions/22973816/hosting-two-wcf-services-using-a-single-console-app? noredirect = 1#comment35081482_22973816] [1] [1]:http://stackoverflow.com/questions/22973816/hosting-two-wcf-services-using-a-single-console-app?noredirect = 1#comment35081482_22973816 – AnkitMittal 2014-04-09 21:43:06

回答

0

問題出在App.Config的服務名稱錯誤。右線

<service behaviorConfiguration="MyService.ServBehavior" name="MyService.ServiceAdmin"> 
+0

如果解決了您的問題,請接受此答案。 – Bernard 2012-02-08 03:57:57

+0

@Bernard我無法在兩天內接受我自己的答案。 – kseen 2012-02-08 04:21:19

相關問題