2012-03-05 10 views
5

エンドポイントは1つで複数のサービス契約を持つWCF Webサービスを作成するにはどうすればよいですか?複数のサービス契約を持つシングルエンドポイント

例:

[ServiceContract] 
public interface IWirelessService 
{ 
    [OperationContract] 
    void AddWireless(); 
} 

[ServiceContract] 
public interface IWiredService 
{ 
    [OperationContract] 
    void AddWired(); 
} 

[ServiceContract] 
public interface IInternetService 
{ 
    [OperationContract] 
    void AddInternet(); 
} 

がIInternetServiceが私のメインのウェブサービスであり、私はそれにIwiredServiceとIWirelessServiceを実装したいが、私は彼らのclasses.Isでこれを可能にし、実装をしたいように考えることができますか?どうすればこの問題を解決できますか?

+1

この質問がありましたか?私はそれがあなたがしようとしているものの答えがあると思う... [リンク](http://stackoverflow.com/questions/334472/run-wcf-servicehost-with-multiple-contracts) –

+0

ありがとう、それは実際には私は何が必要です。 – svlytns

答えて

3

私はあなたが探していたものですか?

[ServiceContract] 
public interface IWirelessService : IInternetService 
{ 
    [OperationContract] 
    Connection AddInternet(); 
} 

[ServiceContract] 
public interface IWiredService : IInternetService 
{ 
    [OperationContract] 
    Connection AddInternet(); 
} 

public class WirelessService : IWirelessService 
{ 
    public Connection AddInternet() 
    { 
    //Get Internet the wireless way 
    } 

} 

public class WiredService : IWiredService 
{ 
    public Connection AddInternet() 
    { 
    //Get Internet the wired way 
    } 
} 

[ServiceContract] 
public interface IInternetService 
{ 
    [OperationContract] 
    Connection AddInternet(); 
} 


[ServiceContract] 
public interface IEnterpriseApplicationService 
{ 
    [OperationContract] 
    void GetDataFromInternet(string url, IInternetService internetService); 
} 
public class InternetProviderService : IEnterpriseApplicationService 
{ 
    public HTMLResponse GetDataFromInternet(string url, IInternetService internetService) 
    { 
     Connection con = internetService.AddInternet(); 
     return con.GetContentFromURL(url); 
    } 
} 
+1

「http://stackoverflow.com/questions/334472/run-wcf-servicehost-with-multiple-contracts」リンクから、私は解決策を得ました。実際に部分的なクラスが私を助けます。助けてくれてありがとう。 – svlytns

関連する問題