[转]如何将WCF服务发布到IIS中去VS2010版
本文轉自:http://www.cnblogs.com/zhangliangzlee/archive/2012/08/29/2661589.html
?
上一遍我轉載了別人的的帖子,如何在VS2010中去創建WCF服務,這一遍我就詳細的講解下如何將WCF Service Library服務部署到IIS中去,供Web應用程序使用。
?
附上Demo:WCF完整的一個Demo(WCF創建、部署、調用).rar?
?
?第二步,給WebServicePerson這個項目添加一個.SVC的文件,取名叫做“PersonService”
?
接下來呢,將創建項目時自帶的文件夾和.aspx文件都刪除掉(如下圖)然后打開 PersonService.svc?文件,我們需要將文件修改如下。
<%@?ServiceHost?Language="C#"?Debug="true"?Service="WCFService_Library2010.PersonService"?%>??
?Service="WCFService_Library2010.PersonService"是需要自己定義的,服務指向那個WCF的服務庫
?
?
?
第三步,非常重要絕對不能忽略,就是要將WCF服務引用到當前的項目中來。?
?
?
第四步,經過上面三步的操作項目基本已成成型了,接下來只需要最后一步了,那就是配置Web.Config. 自己手寫去配置Web.config是非常痛苦的,所幸微軟給我我們提供了非常便捷的配置功能“Edit WCF Configuration”
?
?
我們接著往下看.....
?
進入配置界面后,我們發現Services下面并沒有任何節點,需要我們自己去新建一個,可以點擊“Create a New Service...”去創建?
?
?
去選擇,我們剛剛創建的?WCF Service Library的服務。
?
?
一路next往下。?
?
?
?
?
?
創建完之后,我們會得到這樣的一個界面。?
?
?
?這一步很重要的,因為之前我們已經添加了一個.svc的文件PersonService并且已經配置好了Service的內容,所以系統自動已經在Service Behaviors下面創建了一個PersonService的節點。
此時我們只需要填寫一個name就可以了(如下圖 )
?
?回到Services 選中剛剛創建的name名稱。
?
最后,最關鍵的一步就是要記得“保存”。。不然我們剛做的所有配置都白費了。?
?
?
最后去運行PersonService.svc,右擊 → 在瀏覽器中查看,一切大功告成了。此時你就可以將這個WebAppliction部署到IIS中去了,供Web項目所使用。
?
至于如何在項目里調用WebService,上圖中其實已經有詳細的說明了并且給出調用的代碼了,我就不多說了。
?附上代碼:
<p>?????????<asp:TextBox?ID="TextAge"?runat="server"></asp:TextBox>
????????<asp:TextBox?ID="TextName"?runat="server"></asp:TextBox>
????????<asp:Button?ID="Button1"???runat="server"?Text="新增"?onclick="Button1_Click"?/>
????</p>
????<p>
????????<asp:Label?ID="LabInfo"?runat="server"?Text=""></asp:Label>
????????<asp:Button?ID="Button2"???runat="server"?Text="獲取"?onclick="Button2_Click"?
?????????????/>
????</p>
?
using?System;using?System.Collections.Generic;
using?System.Linq;
using?System.Web;
using?System.Web.UI;
using?System.Web.UI.WebControls;
using?WebPerson.PersonService;//這里是引用webservice
namespace?WebPerson
{
????public?partial?class?_Default?:?System.Web.UI.Page
????{
????????protected?void?Page_Load(object?sender,?EventArgs?e)
????????{
????????}
????????protected?void?Button1_Click(object?sender,?EventArgs?e)
????????{
????????????PersonServiceClient?client?=?new?PersonServiceClient();
????????????client.AddPerson(new?Person()?{?Age=Convert.ToInt32(TextAge.Text),?Name=TextName.Text?});
????????????client.Close();
????????}
????????protected?void?Button2_Click(object?sender,?EventArgs?e)
????????{
????????????LabInfo.Text?=?"";
????????????PersonServiceClient?client?=?new?PersonServiceClient();
????????????Person?[]?personList?=?client.GetAllPersons();
????????????foreach?(Person?model?in?personList)
????????????{
????????????????LabInfo.Text?+=?model.Age?+?","?+?model.Id?+?","?+?model.Name?+?"<br?/>";
????????????}
?????????????
????????}
????}
}?
?
?
?
總結
以上是生活随笔為你收集整理的[转]如何将WCF服务发布到IIS中去VS2010版的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 工作是老板的,生命是自己的。
- 下一篇: 网页上有错误(类不能支持 Automat