2009-04-02 25 views
6

Tôi đang xây dựng một dịch vụ WCF sẽ hiển thị các liên kết BasicHttp và NetTcp. Tôi cũng đã bổ sung thêm hai tương ứng với điểm cuối Mex, ví dụ:WCF Mex Điểm kết thúc cho nhiều ràng buộc

<service name="WCFTest.CalculatorService" behaviorConfiguration="WCFTest.CalculatorBehavior"> 
    <host> 
    <baseAddresses> 
     <add baseAddress = "http://localhost:8000/WCFTest/CalculatorService/" /> 
     <add baseAddress = "net.tcp://localhost:9000/WCFTest/CalculatorService/" /> 
    </baseAddresses> 
    </host> 

    <endpoint address ="basicHttpEP" binding="basicHttpBinding" contract="WCFTest.ICalculatorService"/> 
    <endpoint address="mex" binding="mexHttpBinding" contract="IMetadataExchange"/> 

    <endpoint address ="netTcpEP" binding="netTcpBinding" contract="WCFTest.ICalculatorService"/> 
    <endpoint address="mex" binding="mexTcpBinding" contract="IMetadataExchange"/>   
</service> 

Tôi có thực sự cần thêm một thiết bị đầu cuối NetTcp Mex cũng như một thiết bị đầu cuối BasicHttp Mex? Các khách hàng sẽ không chỉ luôn sử dụng điểm cuối của mex Http để loại bỏ dữ liệu meta bất kể họ sẽ giao tiếp bằng tcp hay không?

Cảm ơn

Trả lời

1

Có, bạn chỉ có thể sử dụng điểm cuối HTTP mex. Tôi nghĩ rằng giả định là khách hàng của bạn có thể giao tiếp qua HTTP.

+0

bạn có muốn nói "Tôi nghĩ giả định là khách hàng của bạn * sẽ chỉ * giao tiếp qua HTTP chứ không phải net.tcp cho mex" hay điều gì đó liên quan, vì bạn chỉ đề xuất sử dụng điểm cuối http mex? – atconway

+0

Đã sửa bài đăng –

1

Không, giả định trong mã của bạn là kênh truyền thông có thể là http hoặc tcp net.

Nếu bạn không khai báo cả hai điều đó có nghĩa là bạn đang hạn chế dịch vụ/khách hàng giao tiếp chỉ trên một ràng buộc.

Các vấn đề liên quan