精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

WCF初接觸實(shí)作之服務(wù)發(fā)布和使用

開發(fā) 后端
我們直接引用契約類庫,現(xiàn)實(shí)中可能因?yàn)殚_發(fā)團(tuán)隊(duì)或語言等原因,客戶端不能直接引用契約類庫,這就需要服務(wù)端公布自己的契約、客戶端發(fā)現(xiàn)契約。

  之前兩篇隨筆的示例中客戶端直接引用契約類庫,現(xiàn)實(shí)中可能因?yàn)殚_發(fā)團(tuán)隊(duì)或語言等原因,客戶端不能直接引用契約類庫,這就需要服務(wù)端公布自己的契約、客戶端發(fā)現(xiàn)契約。

  服務(wù)端:

  服務(wù)端通過配置服務(wù)行為,以元數(shù)據(jù)的形式公布服務(wù)??梢允褂门渲梦募部梢允褂么a。

  1、使用配置文件:

  將之前的WCFDemo.Host.WithConfig項(xiàng)目的配置文件用WCF服務(wù)配置編輯器打開,新建服務(wù)行為配置:

這里就用默認(rèn)的Name,實(shí)際項(xiàng)目中起個(gè)好聽的名字吧

  添加服務(wù)元數(shù)據(jù):

設(shè)置元數(shù)據(jù)的HttpGetEnabled和HttpGetUrl:

選擇服務(wù),設(shè)置其BehaviorConfiguration為剛添加的服務(wù)行為:

保存后的配置文件:

 

  1.   <?xml version="1.0"encoding="utf-8"?> 
  2.   <configuration> 
  3.   <system.serviceModel> 
  4.   <behaviors> 
  5.   <serviceBehaviors> 
  6.   <behavior name="NewBehavior0"> 
  7.   <serviceMetadata httpGetEnabled="true"httpGetUrl="http://localhost:5678/DemoService/metadata"/> 
  8.   </behavior> 
  9.   </serviceBehaviors> 
  10.   </behaviors> 
  11.   <services> 
  12.   <service behaviorConfiguration="NewBehavior0"name="WCFDemo.Services.DemoService"> 
  13.   <endpoint address="http://localhost:5678/DemoService"binding="basicHttpBinding"  
  14. bindingConfiguration=""contract="WCFDemo.Contracts.IDemoService"/>  
  15. bindingConfiguration=""contract="WCFDemo.Contracts.IDemoService"/>  
  16. bindingConfiguration=""contract="WCFDemo.Contracts.IDemoService"/> 
  17.   </service> 
  18.   </services> 
  19.   </system.serviceModel> 
  20.   </configuration> 

 

  使用配置文件的方式,程序代碼不需要任何修改。

  2、代碼方式:

  在WCFDemo.Host.WithoutConfig項(xiàng)目的啟動(dòng)服務(wù)代碼處添加服務(wù)行為的處理代碼:

 

  1.   host = newServiceHost(typeof(DemoService));  
  2.   host.AddServiceEndpoint(typeof(IDemoService), newBasicHttpBinding(), "http://localhost:5678/DemoService");  
  3.   ServiceMetadataBehavior b = newServiceMetadataBehavior();  
  4.   b.HttpGetEnabled = true;  
  5.   b.HttpGetUrl = newUri("http://localhost:5678/DemoService/metadata");  
  6.   host.Description.Behaviors.Add(b);  
  7.   host.Opened += delegate{ label1.Text = "服務(wù)啟動(dòng)";};  
  8.   host.Open(); 

 

  比原來多了4行添加服務(wù)行為的代碼。

  現(xiàn)在,運(yùn)行兩個(gè)宿主程序中的任意一個(gè),點(diǎn)擊啟動(dòng)按鈕后,服務(wù)就啟動(dòng)并發(fā)布了,客戶端可以發(fā)現(xiàn)契約并使用。

  客戶端:

  客戶端如何發(fā)現(xiàn)并使用服務(wù),有2種方式:使用命令行svcutil生成文件、在IDE中添加服務(wù)引用。

  1、使用svcutil

  運(yùn)行宿主并啟動(dòng)服務(wù);運(yùn)行Visual Studio 命令提示,鍵入svcutil http://localhost:5678/DemoService/metadata,將生成一個(gè)DemoService.cs文件和一個(gè)output.config文件(可以通過/out:指定輸出目錄);

  在解決方案中添加一個(gè)Windows窗體應(yīng)用程序WCFDemo.Client,為其添加引用System.ServiceModel和System.Runtime.Serialization;

  將剛才生成的兩個(gè)文件添加到項(xiàng)目,并將output.config改名為App.config;

  在窗體上放置一個(gè)Button和DataGridView,為Button的Click編寫代碼如下:

 

  1.   DemoServiceClient c = newDemoServiceClient();  
  2.   dataGridView1.DataSource = c.GetMonitorData(); 

 

  當(dāng)然可以不用配置文件,newDemoServiceClient()中設(shè)置參數(shù)binding和remoteAddress。

  svcutil常用的選項(xiàng)有/out:、/config:、/noconfig:等,詳細(xì)用法這里就不介紹了。查看配置文件會(huì)發(fā)現(xiàn)里面內(nèi)容很多,因?yàn)樗詣?dòng)為關(guān)鍵的綁定節(jié)點(diǎn)設(shè)置了默認(rèn)值,這部分內(nèi)容可以刪除,所以很多時(shí)候不使用svcutil生成的配置文件。

  2、添加服務(wù)引用

  右擊WCFDemo.Client,在添加服務(wù)引用對(duì)話框中輸入地址http://localhost:5678/DemoService/metadata,點(diǎn)擊“前往”按鈕:

給命名空間起個(gè)好名(示例中就用默認(rèn)名)后確定。

  我們會(huì)發(fā)現(xiàn),除了添加了服務(wù)引用,還修改了配置文件,如果原來沒有配置文件,添加服務(wù)引用后會(huì)自動(dòng)添加配置文件。

  在窗體上再放置一個(gè)Button,為其Click編寫代碼如下:

 

  1.   ServiceReference1.DemoServiceClient c = newServiceReference1.DemoServiceClient();  
  2.   dataGridView1.DataSource = c.GetMonitorData(); 

 

  和前一個(gè)一樣,可以不用配置文件。

  服務(wù)器有兩種方案發(fā)布自己的元數(shù)據(jù):基于HTTP-GET協(xié)議、使用專門的終結(jié)點(diǎn)。以上介紹的是前一種,下面介紹一下第二種。

  1、使用配置文件

  將之前的WCFDemo.Host.WithConfig項(xiàng)目的配置文件用WCF服務(wù)配置編輯器打開,新建服務(wù)終結(jié)點(diǎn),并設(shè)置ABC:

  現(xiàn)在WCFDemo.Host.WithConfig已提供兩種發(fā)布服務(wù)的方式,啟動(dòng)服務(wù)后,客戶端通過之前的地址http://localhost:5678/DemoService/metadata和剛才輸入的地址http://localhost:5678/DemoService/MEX,都可以找到服務(wù)。

  2、使用代碼方式

  在WCFDemo.Host.WithoutConfig項(xiàng)目的啟動(dòng)服務(wù)代碼處增加一行添加終結(jié)點(diǎn)代碼:

 

  1.   host = newServiceHost(typeof(DemoService));  
  2.   host.AddServiceEndpoint(typeof(IDemoService), newBasicHttpBinding(), "http://localhost:5678/DemoService");  
  3.   ServiceMetadataBehavior b = newServiceMetadataBehavior();  
  4.   b.HttpGetEnabled = true;  
  5.   b.HttpGetUrl = newUri("http://localhost:5678/DemoService/metadata");  
  6.   host.Description.Behaviors.Add(b);  
  7.   host.AddServiceEndpoint(typeof(IMetadataExchange), newCustomBinding(newHttpTransportBindingElement()), "http://localhost:5678/DemoService/MEX");  
  8.   host.Opened += delegate{ label1.Text = "服務(wù)啟動(dòng)";};  
  9.   host.Open(); 

 

  效果同上。

原文鏈接:http://www.cnblogs.com/Higel/archive/2011/12/28/2303031.html

【編輯推薦】

  1. 5月最新超有趣的免費(fèi)jQuery插件推薦
  2. 從零開始學(xué)習(xí)jQuery之管理jQuery包裝集
  3. jQuery性能指標(biāo)和調(diào)優(yōu)
  4. 手把手教你jQuery jqPlot畫圖插件
  5. 從零開始學(xué)習(xí)jQuery之萬能的選擇器
責(zé)任編輯:彭凡 來源: 博客園
相關(guān)推薦

2010-06-11 16:59:09

DSR路由協(xié)議

2009-11-05 10:07:37

WCF設(shè)計(jì)模式

2009-01-22 10:31:28

2009-10-22 18:06:31

CLR存儲(chǔ)過程

2010-06-30 11:21:42

UML業(yè)務(wù)建模

2010-02-26 14:39:27

WCF服務(wù)寄宿

2010-03-02 16:28:11

WCF發(fā)布訂閱

2009-12-04 17:47:04

WCF 服務(wù)

2010-03-02 14:06:37

WCF服務(wù)實(shí)例管理模式

2009-12-22 15:47:03

WCF服務(wù)器證書

2009-12-08 16:59:52

WCF服務(wù)

2009-11-06 17:10:34

WCF服務(wù)性能計(jì)數(shù)器

2009-11-06 16:48:03

WCF簡介

2009-11-05 11:23:08

WCF宿主

2009-11-05 09:43:11

WCF好處

2009-11-05 10:13:39

WCF框架

2010-06-30 13:17:12

UML業(yè)務(wù)建模

2009-11-09 15:58:07

WCF回調(diào)方法

2009-04-07 16:21:35

ASP.NETAJAXWCF

2009-11-05 15:25:36

WCF服務(wù)端配置
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)

免费日韩av片| 日本三级久久| 午夜亚洲福利老司机| 美女被啪啪一区二区| 波多野结衣毛片| 欧美黄污视频| 亚洲人线精品午夜| 国产5g成人5g天天爽| 国产在线精彩视频| 国产精品免费视频一区| 国产伦视频一区二区三区| 中文字幕日韩经典| 好看的日韩av电影| 中文字幕一精品亚洲无线一区| 欧美xxxx黑人| 成人国产在线| 狠狠色噜噜狠狠狠狠97| 波多野结衣与黑人| 伊人免费在线| 91视频在线观看免费| 91在线直播亚洲| 亚洲av无码乱码国产精品fc2| 狠狠综合久久| 久久精品2019中文字幕| 实拍女处破www免费看| 亚洲日本视频在线| 欧美日韩大陆一区二区| 一本色道无码道dvd在线观看| 色婷婷av在线| 亚洲色图.com| 亚洲午夜精品一区二区三区| 日韩精品系列| 不卡av免费在线观看| 91探花福利精品国产自产在线| 波多野结衣视频在线观看| 亚洲午夜极品| 欧美俄罗斯性视频| 欧美性猛交xxxxx少妇| 欧美顶级大胆免费视频| 亚洲日本成人女熟在线观看 | 欧美三根一起进三p| av中字幕久久| 亚洲免费伊人电影在线观看av| 亚洲图片欧美另类| 一区二区视频| 精品少妇一区二区三区| 女教师高潮黄又色视频| 精品国产鲁一鲁****| 欧美日韩一区二区在线观看视频| 国产成人无码av在线播放dvd| 高端美女服务在线视频播放| 亚洲成人在线免费| 久久精品无码中文字幕| 精精国产xxxx视频在线中文版 | eeuss影院一区二区三区| 91传媒视频在线观看| 99久久精品免费看国产交换| 激情欧美日韩一区二区| 91香蕉嫩草影院入口| a网站在线观看| 国产在线视频不卡二| 91中文精品字幕在线视频| 国产丝袜在线视频| 国产精品88av| 国产一区免费观看| 日本成人一区| 国产欧美日韩激情| 亚洲在线色站| av官网在线播放| 亚洲已满18点击进入久久| 东北少妇不带套对白| 电影在线观看一区| 色婷婷狠狠综合| 手机在线成人免费视频| 成人国产精品久久| 精品久久久久久久久久久久包黑料| 国产69视频在线观看| 台湾佬综合网| 中文字幕欧美日韩| 欧洲第一无人区观看| 亚洲性视频h| 青青草原一区二区| 91美女精品网站| 国产成人免费在线观看不卡| 国内精品久久久久久久果冻传媒| 色天堂在线视频| 国产精品每日更新在线播放网址 | 亚洲七七久久综合桃花剧情介绍| 亚洲国产精品欧美一二99| 黑森林福利视频导航| 成人精品动漫| 精品久久久久久久久久久久包黑料 | 成人精品国产一区二区4080| 清纯唯美一区二区三区| av网站网址在线观看| 偷拍一区二区三区四区| www.亚洲高清| 精品中国亚洲| 日韩一级裸体免费视频| 日韩欧美亚洲一区二区三区| 91久久中文| 国产主播欧美精品| 香蕉视频免费在线看| 国产精品久久久爽爽爽麻豆色哟哟| 日本黄网站色大片免费观看| 日韩福利一区| 精品久久久久久久久久久久久久久| 欧美人与禽zoz0善交| 亚洲第一精品影视| 亚洲a中文字幕| 国产在线视频网址| 性做久久久久久久久| 天堂在线中文在线| 蜜桃精品噜噜噜成人av| 欧美激情亚洲激情| 夜夜躁很很躁日日躁麻豆| 91在线观看地址| 免费人成在线观看视频播放| 北岛玲精品视频在线观看| 亚洲美女在线看| 日韩伦理在线视频| 国产aⅴ精品一区二区三区色成熟| 色综合久久久久久久久五月| 欧美男男tv网站在线播放| 日韩视频一区二区| 久久国产高清视频| 老**午夜毛片一区二区三区 | 涩爱av在线播放一区二区| 亚洲精品成人精品456| 天天干天天综合| 国产a久久精品一区二区三区| 久久久久久久久久久久久久久久久久av| ,亚洲人成毛片在线播放| 国产视频亚洲色图| 777米奇影视第四色| 国产精品白浆| 久久乐国产精品| 丰满人妻一区二区三区免费| 亚洲黄色免费网站| 在线免费黄色小视频| 国产精品88久久久久久| 国产日韩中文字幕在线| 91精品国产91久久久久游泳池 | 日本77777| 99精品全国免费观看视频软件| 国产精品老牛影院在线观看| 国产私拍精品| 欧美日韩久久久| 国产精品久久久免费看| 激情综合网天天干| 激情五月五月婷婷| 日韩影片在线观看| 欧美成人免费va影院高清| 99精品在线视频观看| 亚洲久草在线视频| 国产高潮视频在线观看| 日韩五码在线| 久久精品丝袜高跟鞋| 欧亚在线中文字幕免费| 亚洲欧美日韩另类| 中文字幕人妻一区二区在线视频| 国产精品久久久久婷婷| 天天摸天天舔天天操| 91高清一区| 国产传媒一区| 粉嫩一区二区| 中文综合在线观看| 国产男女无套免费网站| 亚洲国产视频在线| ass精品国模裸体欣赏pics| 噜噜噜在线观看免费视频日韩| 欧美一区二区三区精美影视 | 久久99精品久久久水蜜桃| 亚洲天堂av影院| 中文字幕亚洲一区二区三区| 91超薄丝袜肉丝一区二区| 一区二区三区在线观看网站| 搡老熟女老女人一区二区| 免费欧美在线视频| 男女爱爱视频网站| 日韩大片在线免费观看| 国产区亚洲区欧美区| 亚洲婷婷噜噜| 亚洲色图色老头| 精品久久久久成人码免费动漫| 精品国产鲁一鲁一区二区张丽| 国产综合精品久久久久成人av| 国产一区二区在线影院| 免费无码毛片一区二三区| 精品视频97| 成人在线观看av| 日韩三区免费| 久久久久久久一区二区三区| 99视频在线观看地址| 精品久久久三级丝袜| 中文字幕日本视频| 亚洲va中文字幕| 日本免费网站视频| 2021久久国产精品不只是精品| 九九精品久久久| 免费视频一区| 欧美日韩中文字幕在线播放| 欧美女优在线视频| 国产福利不卡| 伊人久久大香伊蕉在人线观看热v| 97在线免费观看| 日本不卡在线| 亚洲视频在线观看| 少妇一级淫片免费看| 欧美精品123区| 在线观看 亚洲| 亚洲一区二区三区国产| 999精品久久久| 国产亚洲va综合人人澡精品| 欧美日韩人妻精品一区在线| 狠狠网亚洲精品| 好男人www社区| 中文幕无线码中文字蜜桃| 日韩国产精品大片| 国产婷婷一区二区三区| 一本到12不卡视频在线dvd| 天堂精品一区二区三区| 日韩精品亚洲aⅴ在线影院| 亚洲字幕在线观看| 婷婷激情成人| 国产日韩欧美在线播放| 桃子视频成人app| 欧美中文在线字幕| 国产精品vvv| 欧美激情一区二区三区高清视频 | 97caocao| 欧美日韩一区二区三区免费看| 欧美一区免费看| 欧美午夜激情在线| 久久一区二区三区视频| 五月天视频一区| 五月天综合激情| 精品国产乱码久久久久久婷婷| 国产亚洲第一页| 亚洲制服丝袜av| 国产一级片久久| 亚洲成av人影院在线观看网| 国产亚洲精品久久久久久无几年桃| 亚洲美女视频在线| 欧美三级日本三级| 一区二区欧美国产| 男人的午夜天堂| 91麻豆国产精品久久| 性欧美成人播放77777| 91影院在线观看| 国产精品无码久久久久久| 91蜜桃婷婷狠狠久久综合9色| 97人妻精品一区二区三区免| 久久免费看少妇高潮| 一区二区精品免费| 国产精品视频免费| www.av成人| 亚洲午夜成aⅴ人片| 天天操天天摸天天干| 色综合久久久久久久久| 正在播放亚洲精品| 欧美一区二区三区婷婷月色 | www.成人| 国产精品我不卡| 天天做夜夜做人人爱精品 | 一本色道综合久久欧美日韩精品| 2023国产精品| 免费黄色激情视频| 亚洲午夜精品在线| 久久人人爽人人爽人人片av免费| 欧美色倩网站大全免费| aaa国产视频| 亚洲国内精品视频| h网站视频在线观看| 久热精品在线视频| 黄毛片在线观看| 国产精品一区二区三区在线播放 | 日韩欧美国产综合| 日韩欧美电影在线观看| 日韩中文视频免费在线观看| 少女频道在线观看免费播放电视剧| 韩剧1988免费观看全集| 欧美不卡高清一区二区三区| 91精品免费| 国内精品久久久久久久影视简单 | 日韩欧美在线不卡| 日本韩国一区| 久久这里只有精品视频首页| 都市激情国产精品| 成人国产在线视频| 欧洲亚洲一区二区三区| 亚洲砖区区免费| 在线亚洲成人| 亚洲一区二区福利视频| 99精品桃花视频在线观看| 久草福利资源在线| 欧美日韩亚洲一区二区三区| 国产美女免费视频| 亚洲色图35p| segui88久久综合9999| 成人久久久久久| 蜜桃成人av| 性高湖久久久久久久久aaaaa| 美女www一区二区| 欧美大片免费播放器| 亚洲欧美日韩在线播放| 波多野结衣 久久| 精品国内二区三区| 黄色网页在线播放| 国产精品成人播放| 日韩mv欧美mv国产网站| 国产又粗又猛又爽又黄的网站| 蜜臀久久99精品久久久久宅男 | 奇门遁甲1982国语版免费观看高清| 亚洲精品69| 水蜜桃一区二区三区| 亚洲一区二区动漫| 日本久久久久久久久久| 综合分类小说区另类春色亚洲小说欧美| 久久久久久在线观看| 精品88久久久久88久久久| 精品国产99久久久久久| 国产精品美女视频网站| 国产一区二区三区四区五区传媒| 91视频 -- 69xx| 成人国产亚洲欧美成人综合网| 欧美精品入口蜜桃| 91精品婷婷国产综合久久性色 | 手机版av在线| 亚洲国产精华液网站w| 中文字幕高清在线免费播放| 日韩av在线不卡| 九色porny丨首页入口在线| 国产精品大全| 欧美日韩综合| 欧美图片自拍偷拍| 一区二区三区精品| 精品国自产拍在线观看| 久久91精品国产91久久久| 精品国产麻豆| 成年丰满熟妇午夜免费视频| 国产精品123区| 久久久久久久中文字幕| 欧美大肚乱孕交hd孕妇| 黄色成人在线网| 国产伦精品一区二区三区四区免费| 亚洲激情偷拍| 一本加勒比波多野结衣| 黑人巨大精品欧美一区免费视频| 手机在线不卡av| 人九九综合九九宗合| 精品国精品国产自在久国产应用| www.日日操| 国产精品国产三级国产a| 97人妻精品一区二区三区软件 | 日韩中文字幕一区二区| 日韩av一区二区三区| 免费看一级黄色| 欧美一区二区三区视频在线| 91在线中文| 国产在线欧美日韩| 日韩成人伦理电影在线观看| 国产调教在线观看| 欧美一区二区网站| 韩国日本一区| 欧洲精品久久| 国内一区二区在线| 日韩精品成人在线| 亚洲性av在线| 欧美成年网站| 人妻熟妇乱又伦精品视频| 国产人伦精品一区二区| 国产毛片毛片毛片毛片毛片| 欧美黑人巨大xxx极品| 欧美尿孔扩张虐视频| 污污的网站18| 亚洲一区二区三区视频在线播放| 暖暖视频在线免费观看| 国产欧美一区二区三区四区| 红桃视频欧美| 丰满大乳奶做爰ⅹxx视频| 欧美日韩一区二区三区在线 | 你懂的网址国产 欧美| 成人免费无码大片a毛片| 在线观看视频一区二区| 50度灰在线| 少妇精品久久久久久久久久| 国产乱妇无码大片在线观看| 亚洲va在线观看| 欧美成人在线免费| 国产一区二区三区日韩精品 | 国产精品一区二区av白丝下载 | 97久久超碰| 国产精品无码一本二本三本色| 一区二区三区美女视频| 国产小视频在线| 成人在线免费网站| 久久精品噜噜噜成人av农村| 永久免费看片在线播放| 久久九九精品99国产精品|