2013-08-15 38 views
9

Tôi đang phát triển một Dịch vụ WCF và tôi hơi bối rối về việc nó tiêu thụ cấu hình của nó ở đâu.WCF Service app.config

Tôi có một file app.config trong ứng dụng máy chủ của tôi (giao diện điều khiển ứng dụng) và trong dự án dịch vụ WCF của tôi (đi kèm với mẫu)

Trong thời gian chạy tôi có thể thấy rằng cấu hình của cả hai tập tin được sử dụng.

Tính năng này hoạt động như thế nào? Tại sao dự án thư viện WCF (một dự án dll) chứa một tệp app.config và mục đích của nó là gì?

tôi thực sự có thể sử dụng một số giải thích về vấn đề này ...

Cập nhật

này là cấu hình WCF từ app.config của tôi trong việc áp dụng chủ

<system.serviceModel> 

    <!-- services --> 
    <services> 
     <service name="Services.CalcService"> 
      <endpoint address="net.tcp://localhost:8412/MyCalcService" 
         binding="netTcpBinding" 
         bindingConfiguration="MyNetTcpBinding" 
         contract="Contracts.ICalc"/> 
     </service> 
    </services> 

    <!-- bindings --> 
    <bindings> 
     <netTcpBinding> 
      <binding name="MyNetTcpBinding" 
        closeTimeout="00:01:00" 
        openTimeout="00:01:00" 
        receiveTimeout="00:10:00" 
        sendTimeout="00:01:00" 
        transactionFlow="false" 
        transferMode="Streamed" 
        transactionProtocol="OleTransactions" 
        hostNameComparisonMode="StrongWildcard" 
        listenBacklog="10" 
        maxBufferPoolSize="524288" 
        maxBufferSize="65536" 
        maxConnections="10" 
        maxReceivedMessageSize="65536"> 
       <readerQuotas maxDepth="32" 
           maxStringContentLength="8192" 
           maxArrayLength="16384" 
           maxBytesPerRead="4096" 
           maxNameTableCharCount="16384" /> 
       <reliableSession ordered="true" 
           inactivityTimeout="00:10:00" 
           enabled="false" /> 
       <security mode="Transport"> 
        <transport clientCredentialType="Windows" protectionLevel="EncryptAndSign" /> 
       </security> 
      </binding> 
     </netTcpBinding> 
    </bindings> 

</system.serviceModel> 

Đây là của tôi Cấu hình WCF từ thư viện dịch vụ WCF của tôi

<system.serviceModel> 
<services> 
    <service name="Services.CalcService"> 
    <endpoint address="" binding="basicHttpBinding" contract="Contracts.ICalc"> 
     <identity> 
     <dns value="localhost" /> 
     </identity> 
    </endpoint> 
    <endpoint address="mex" binding="mexHttpBinding" contract="IMetadataExchange" /> 
    <host> 
     <baseAddresses> 
     <add baseAddress="http://localhost:8733/Design_Time_Addresses/Services/CalcService/" /> 
     </baseAddresses> 
    </host> 
    </service> 
</services> 
<behaviors> 
    <serviceBehaviors> 
    <behavior> 
     <serviceMetadata httpGetEnabled="True" httpsGetEnabled="True"/> 
     <serviceDebug includeExceptionDetailInFaults="False" /> 
    </behavior> 
    </serviceBehaviors> 
</behaviors> 

Xin cảm ơn, Omri.

Trả lời

12

Cách hoạt động?

Chỉ sử dụng tệp cấu hình của ứng dụng máy chủ lưu trữ.

Tại sao dự án thư viện WCF (một dự án dll) chứa một file app.config

Nếu đó là trong một thư viện lớp tôi đoán đó là mẫu VS mà thêm vào nó.

mục đích của mục đích là gì?

Nó có thể được sử dụng bởi WCF Service Host (WcfSvcHost.exe) khi bạn chạy thư viện dịch vụ WCF bằng F5 trong Visual Studio.

+0

Câu trả lời cuối cùng là những gì tôi đã bỏ lỡ, Cảm ơn! –