如何配置wcf
Ⅰ vs wcf服務應用程序怎樣進行配置
一、在代碼中實現並配置WCF服務。
在VS2012中創建一個控制台應用程序項目CsWcf,並添加介面ICalculator作為契約介面、類CalculatorService作為服務實現此介面中的操作方法,代碼如下:
1. ICalculator.cs--服務契約
1: using System;
2: using System.Collections.Generic;
3: using System.Linq;
4: using System.Text;
5: using System.ServiceModel;
6:
7: namespace CsWcf
8: {
9: [ServiceContract]
10: public interface ICalculator
11: {
12: [OperationContract]
13: double Add(double x, double y);
14: }
15: }
2. CalculatorService.cs--服務實現
1: using System;
2: using System.Collections.Generic;
3: using System.Linq;
4: using System.Text;
5: using System.ServiceModel;
6:
7: namespace CsWcf
8: {
9: public class CalculatorService:ICalculator
10: {
11: public double Add(double x, double y)
12: {
13: return x + y;
Ⅱ 如何:配置 WCF 服務以便與 ASP.NET Web 服務客戶端進行互操作
若要使 WCF 服務的元數據可供 ASP.NET Web 服務代理生成工具(即 Web Services Description Language Tool (Wsdl.exe) (Web 服務描述語言工具 (Wsdl.exe))、
Ⅲ 如何配置 WCF-WebHttp 接收位置
在 BizTalk Server 管理控制台中,依次展開「BizTalk Server 管理」、「BizTalk 組」、「應用程序」,然後展開要在其下創建接收位置的應用程序。
在左窗格中,單擊「接收埠」節點,在右窗格中,右鍵單擊你希望將新的接收位置與其關聯的接收埠,然後單擊「屬性」。
在「接收埠屬性」對話框的左窗格中,選擇「接收位置」,然後在右窗格中單擊「新建」以創建新的接收位置。
在「接收位置屬性」對話框的「傳輸」部分中,從「類型」下拉列表中選擇「WCF-WebHttp」,然後單擊「配置」以配置接收位置的傳輸屬性。
在「WCF-WebHttp 傳輸屬性」對話框中的「常規」選項卡上,為接收消息所在的 REST 介面配置終結點地址。
Ⅳ wcf需要什麼樣的配置才可以使用
http://www.google.cn/search?q=wcf%E9%9C%80%E8%A6%81%E4%BB%80%E4%B9%88%E6%A0%B7%E7%9A%84%E9%85%8D%E7%BD%AE%E6%89%8D%E5%8F%AF%E4%BB%A5%E4%BD%BF%E7%94%A8&sourceid=navclient-ff&ie=UTF-8&rlz=1B2GGFB_zh-CNCN278CN278
Ⅳ 如何配置net.tcp 的WCF服務
這個方法里,我們有兩個函數,一個能夠根據學生點獲取學生全名,另一個是根據學生點獲取學生的實體對象。
好了,讓我們來編譯這個項目,得到一個WCFServiceGeneratedByConfig.exe文件。
然後,我們需要配置文件來讓伺服器端啟動,所以這里我們要用WCF Service Configuration Editor
工具來進行,由於在VS2008 和VS2010中帶有這個軟體,我們可以直接通過菜單->Tools->WCF Service Configuration Editor來打開。
首先,點擊File->New config, 打開Service的Configuration界面。
然後,點擊Create a new service…,在彈出的界面中,我們選擇剛才生成的那個WCFServiceGeneratedByConfig.exe文件。雙擊之後,軟體自動顯示出了裡面含有的Service:
點選那個Service,然後點擊兩次next,我們會看到出現了選擇Communation Mode的界面,這里由於我們用的是net.tcp,所以我選擇了第一個:TCP。
然後點擊Next,我們會看到要我們填寫EndPoint,這里我隨便填寫了一個:
之後,點擊Next知道Finish,然後,我們的最基本的配置就結束了。
回到Config界面之後,我們點擊Advanced->Service Behaviors->New Service Behavior Configuration,在彈出的界面中,我們點擊Add->serviceMetadata:
然後點擊Add,我們就添加了一個Behavior Element。點擊剛剛生成的serviceMetadata節點,在顯示的界面中,設置HttpGetEnabled為true。
然後點擊原來的Service節點下的Host節點,在Base Address欄目下單擊Add,添加如下的Base Address:
最後點擊OK。然後點擊菜單File->Save As 保存到項目文件夾下即可。
這里是生成的代碼:
View Code
這一步做完後,我們需要讓服務能夠啟動,怎麼啟動呢?請看下面的代碼:
View Code
代碼中的注釋部分非常重要,我們一定要添加,否則下面的步驟不能進行,具體的原因,參加我的另一篇文章:在net.tcp模式下,由SvcUtil.exe生成代理類文件和配置文件
然後運行這個ConsoleApplication。
接下來,找到SvcUtil.exe,C:\Program Files\Microsoft SDKs\Windows\v7.0A\bin\SvcUtil.exe,在CMD窗口下運行如下命令:
C:\Program Files\Microsoft SDKs\Windows\v7.0A\bin\SvcUtil.exe net.tcp://127.0.0.1:50001/StudentServiceEndPoint
這樣,這個小工具就會自動的給我們生成代理類和配置文件
Microsoft (R) Service Model Metadata Tool
[Microsoft (R) Windows (R) Communication Foundation,版本 3.0.4506.2152]
版權所有(c) Microsoft Corporation。保留所有權利。
正在嘗試使用 WS-Metadata Exchange 從「net.tcp://127.0.0.1:50001/StudentServiceEndPoint」下載元數據。此 URL 不支持 DISCO。
正在生成文件...
E:\WCF\WCF_ChatRoom\StudentService.cs
E:\WCF\WCF_ChatRoom\output.config
請按任意鍵繼續. . .
客戶端的配置步驟
接下來,新建一個WindowsFormsApplication程序,將這個代理類拷入,配置文件修改名稱為App.config拷入,
然後在Form1.cs中拖入一個文本框,一個按鈕,一個DataGridView,後台代碼如下:
View Code
啟動這個實例,輸入學生ID,我們成功得到了服務端返回的值。
在本機和公網上的運行結果
那麼能不能在公網上使用呢?呵呵,這個當然,將服務端拷貝到外網的一台機器上,然後修改伺服器端的配置文件中的地址為:net.tcp://169.*.*.124:50001/ StudentServiceEndPoint,然後將本機的配置文件中的地址也修改為這個,最後運行,依然能夠得到返回的結果。
Ⅵ wcf的配置文件應該添加在什麼地方
缺少基於HTTP協議的URL進行連接
經過測試一下是可以運行的App.config文件內容
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<system.web>
<compilation debug="true" />
</system.web>
<!-- 部署服務庫項目時,必須將配置文件的內容添加到
主機的 app.config 文件中。System.Configuration 不支持庫的配置文件。-->
<system.serviceModel>
<services>
<service name="WcfServiceLibrary1.Service1" behaviorConfiguration="WcfServiceLibrary1.Service1Behavior">
<host>
<baseAddresses>
<add baseAddress = "http://localhost:8731/Design_Time_Addresses/WcfServiceLibrary1/Service1/" />
<add baseAddress = "net.tcp://localhost:8080/Design_Time_Addresses/WcfServiceLibrary1/Service1/" />
</baseAddresses>
</host>
<!-- Service Endpoints -->
<!-- 除非完全限定,否則地址將與上面提供的基址相關 -->
<!--<endpoint address ="" binding="wsHttpBinding" contract="WcfServiceLibrary1.IService1">
--><!--
部署時,應刪除或替換下列標識元素,以反映
在其下運行部署服務的標識。刪除之後,WCF 將
自動推導相應標識。
--><!--
<identity>
<dns value="localhost"/>
</identity>
</endpoint>-->
<endpoint address ="tcp" binding="netTcpBinding" contract="WcfServiceLibrary1.IService1">
<identity>
<dns value="localhost"/>
</identity>
</endpoint>
<!-- Metadata Endpoints -->
<!-- 元數據交換終結點由服務用於向客戶端做自我描述。-->
<!-- 此終結點不使用安全綁定,應在部署前確保其安全或將其刪除-->
<!--<endpoint address="mex" binding="mexHttpBinding" contract="IMetadataExchange"/>-->
</service>
</services>
<behaviors>
<serviceBehaviors>
<behavior name="WcfServiceLibrary1.Service1Behavior">
<!-- 為避免泄漏元數據信息,
請在部署前將以下值設置為 false 並刪除上面的元數據終結點 -->
<serviceMetadata httpGetEnabled="True"/>
<!-- 要接收故障異常詳細信息以進行調試,
請將下值設置為 true。在部署前
設置為 false 以避免泄漏異常信息-->
<serviceDebug ="False" />
</behavior>
</serviceBehaviors>
</behaviors>
</system.serviceModel>
</configuration>
Ⅶ 如何:安裝和配置 WCF 激活組件
下面的部分略述此配置的步驟:安裝(或確認安裝)WCF 激活組件。配置WAS 以支持非 HTTP 協議。下面的過程對 Windows Vista 進行 TCP 激活配置。在安裝和配置 WAS 之後,請參見 如何:在 WAS 中承載 WCF 服務 以了解創建公開使用 WAS 的非 HTTP 終結點的 WCF 服務的過程。安裝WCF 非 HTTP 激活組件單擊「開始」按鈕,再單擊「控制面板」。單擊「程序」,再單擊「程序和功能」。在「任務」菜單上,單擊「打開或關閉 Windows 功能」。查找.NET Framework 3.0 節點,選中該節點然後將其展開。選中「WCF 非 HTTP 激活組件」框並保存設置。配置WAS 以支持 TCP 激活若要支持 net.tcp 激活,必須首先將默認的網站綁定到一個 net.tcp 埠。可以通過使用隨 IIS 7.0 管理工具集安裝的 Appcmd.exe 來執行此操作。在管理員級別命令提示符窗口中,運行以下命令。
Ⅷ 如何配置 WCF-NetTcp 發送處理程序
使用 BizTalk 瀏覽器對象模型,您可以通過編程方式創建和配置接收位置。BizTalk 瀏覽器對象模型公開了具有 TransportTypeData 讀/寫屬性的 IReceiveLocation 接收位置配置介面。此屬性接受名稱-值對 XML 字元串形式的 WCF-NetTcp 接收位置配置屬性包。若要在 BizTalk 瀏覽器對象模型中設置此屬性,則必須設置 IReceiveLocation 介面的 InboundTransportLocation 屬性。
並非一定要設置 IReceiveLocation 介面的 TransportTypeData 屬性。如果未設置該屬性,則 WCF-NetTcp 適配器將使用 WCF-NetTcp 接收位置配置的默認值.
Ⅸ 如何配置不啟用安全的WCF服務
服務端首先可以設置SecurityMode=「None」。這個可以通過配置文件,也可以通過代碼來實現。這里給出配置文件的方式。參考代碼:
<wsHttpBinding>
<binding name="bindingConfiguration">
<security mode="None">
<transport clientCredentialType="None"/>
<message clientCredentialType="None"/>
</security>
</binding>
</wsHttpBinding>
另外這里還要把這個綁定用到對應的Endpoint的配置上:
bindingConfiguration="bindingConfiguration"
例子如下:
<endpoint
address="WCFService"
binding="wsHttpBinding"
bindingConfiguration="bindingConfiguration"
contract="WCFService.IWCFService">
</endpoint>
【3】Client配置: 客戶端配置 也要與之對應,最好重新添加服務引用。更新客戶端配置。 當然也可以自己手動更新,因為沒有使用安全傳輸以及驗證客戶端。 所以客戶端簡化配置如下:
<system.serviceModel>
<bindings>
<wsHttpBinding>
<binding name="WSHttpBinding_IWCFService" />
<security mode="None">
<transport clientCredentialType="None" />
<message clientCredentialType="None" />
</security>
</binding>
</wsHttpBinding>
</bindings>
<client>
<endpoint address="https://frank-xu2009:9001/WCFService" binding="wsHttpBinding"
bindingConfiguration="WSHttpBinding_IWCFService" contract="ClientProxy.IWCFService"
name="WSHttpBinding_IWCFService" />
</client>
</system.serviceModel>
Ⅹ net iis6.0怎麼配置wcf服務
在.NET 3.5中,我們需要這樣做:
1. 添加一個HelloService.svc文件,添加ServiceHost標記,在Service中添加WCF服務實現的名稱,比如:
<%@ ServiceHost Language="C#" Debug="false" Service="CNBlogs.Service.Impl.HelloService"%>
2. 在web.config/system.serviceModel/bindings/basicHttpBinding中添加一個binding。
3. 在web.config/system.serviceModel/behaviors/serviceBehaviors中添加一個behavior。
4. 在web.config/system.serviceModel/services中添加一個service,並且:
a) 設置behaviorConfiguration屬性。
b) 設置name屬性。
5. 在service下添加一個endpoint,並且:
a) 設置binding屬性。
b) 設置name屬性。
c) 設置contract屬性。
在.NET 4中,我們只要這樣做:
在web.config/system.serviceModel/serviceHostingEnvironment/serviceActivations中增加下面兩個屬性即可:
<add relativeAddress="HelloService.svc" service="CNBlogs.Service.Impl.HelloService"/>
這樣配置後,就可以正常調用WCF服務。
如果需要通過SvcUtil.exe生成客戶端代理,只需在serviceBehaviors中添加:
<behavior>
<serviceMetadata httpGetEnabled="true"/>
</behavior>