锘??xml version="1.0" encoding="utf-8" standalone="yes"?>欧美96在线丨欧,99精品视频一区二区三区,久久精品在线播放http://m.shnenglu.com/huangyi5209/category/16668.htmlzh-cnThu, 21 Apr 2011 16:12:36 GMTThu, 21 Apr 2011 16:12:36 GMT60Passing a JSON array to a WCF service 浼犻抝son鏁扮粍鍒皐cf service 錛堣嚜瀹氫箟鏁版嵁綾誨瀷錛?/title><link>http://m.shnenglu.com/huangyi5209/articles/144755.html</link><dc:creator>huangyi5209</dc:creator><author>huangyi5209</author><pubDate>Thu, 21 Apr 2011 14:14:00 GMT</pubDate><guid>http://m.shnenglu.com/huangyi5209/articles/144755.html</guid><wfw:comment>http://m.shnenglu.com/huangyi5209/comments/144755.html</wfw:comment><comments>http://m.shnenglu.com/huangyi5209/articles/144755.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://m.shnenglu.com/huangyi5209/comments/commentRss/144755.html</wfw:commentRss><trackback:ping>http://m.shnenglu.com/huangyi5209/services/trackbacks/144755.html</trackback:ping><description><![CDATA[     鎽樿: Sunday, October 10, 2010 Passing a JSON array to a WCF service While the following information is available on the Internet, I had to piece it together from various sources, so for my own...  <a href='http://m.shnenglu.com/huangyi5209/articles/144755.html'>闃呰鍏ㄦ枃</a><img src ="http://m.shnenglu.com/huangyi5209/aggbug/144755.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://m.shnenglu.com/huangyi5209/" target="_blank">huangyi5209</a> 2011-04-21 22:14 <a href="http://m.shnenglu.com/huangyi5209/articles/144755.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item><item><title>C#涓殑Delegates涓嶦vent Handlerhttp://m.shnenglu.com/huangyi5209/articles/144742.htmlhuangyi5209huangyi5209Thu, 21 Apr 2011 11:47:00 GMThttp://m.shnenglu.com/huangyi5209/articles/144742.htmlhttp://m.shnenglu.com/huangyi5209/comments/144742.htmlhttp://m.shnenglu.com/huangyi5209/articles/144742.html#Feedback0http://m.shnenglu.com/huangyi5209/comments/commentRss/144742.htmlhttp://m.shnenglu.com/huangyi5209/services/trackbacks/144742.html 

1. 浣跨敤Delegates榪涜浜嬩歡澶勭悊錛屼竴鑸伒寰笅闈㈢殑妯″紡錛?/span>

鎴戜滑灝嗕簨浠剁殑鍙戣搗鑰?Event Source)縐頒負Publisher錛屽皢浜嬩歡鐨勫鐞嗚?Event Handler)縐頒負Subscriber.


2. 鍏蜂綋鐨勫仛娉曪紝鐢ㄤ竴涓畝鍗曠殑渚嬪瓙鏉ョ湅濡備綍榪涜浜嬩歡鐨勫皝瑁呭鐞嗭紒


椴ㄩ奔姝e湪緗戜笂娼滄按錛岀獊鐒朵粬鍐沖畾鍑洪棬(Event)錛屼粬浼氭湁浠涔堝姩浣滃憿(Event Handler)錛?br>  ---> 鍐沖畾鍑洪棬浜?...錛堜竴涓閮ㄨ皟鐢?..sharkMind.DecideGetOut()錛?br>     ---> 椴ㄩ奔鐨勮剳瀛愪駭鐢熶竴浜涚敓鐗╃數... 錛堜竴涓簨浠舵縺鍙戜簡... OnGetOut錛?br>       ---> 璋佹潵鍋氬鐞嗭紝涓㈢粰紲炵粡緋葷粺鍚?..錛堜竴涓猟elegate瑕佽礋璐d紶閫掓寚浠?...GetOutEventHandler錛?

         ---> 鍏蜂綋濡備綍鍋氾紝褰撶劧鏄波楸肩殑韜綋鍟?..錛坰harkBody.OpenDoor()錛?br>           ---> 涓涓簨浠跺彲鑳介渶瑕佸ソ鍑犱釜鍔ㄤ綔澶勭悊鍝︼紝鎵浠ユ垜闇瑕侊細寮闂紝鏀句笅涓滆タ錛屽叧闂紒


2.1 綰佃涓涓嬫暣涓簨浠剁殑澶勭悊榪囩▼...
filename: Program.cs

class Program {
static void Main(string[] args) {
//椴ㄩ奔鐨勮剳琚嬶紝綆楁槸涓涓簨浠跺彂璧瘋咃紝the Publisher.
GetOutPublisher sharkMind = new GetOutPublisher();

//椴ㄩ奔鐨勮韓浣擄紝綆楁槸涓涓簨浠跺鐞嗚咃紝the Subscriber.
GetOutSubscriber sharkBody = new GetOutSubscriber();

//寤虹珛椴ㄩ奔鐨勭緇忕郴緇熷崟鍏?/span>

杞歡寮鍙戠綉 www.mscto.com


GetOutEventHandler eventAction1 = new GetOutEventHandler(sharkBody.OpenTheDoor);
GetOutEventHandler eventAction2
= new GetOutEventHandler(sharkBody.PutDownWhat);
GetOutEventHandler eventAction3
= new GetOutEventHandler(sharkBody.CloseTheDoor);

//鎶婇波楸肩殑紲炵粡緋葷粺鍗曞厓涓庤剳瀛愯仈緋昏搗鏉? 鍗充負灝嗕簨浠跺鐞嗗姩浣滄敞鍐屽埌浜嬩歡濮旀墭涓?
sharkMind.OnGetOutHandler += eventAction1;
sharkMind.OnGetOutHandler
+= eventAction2;
sharkMind.OnGetOutHandler
+= eventAction3;

//澶栭潰澶╂皵涓嶉敊錛屾垜鍐沖畾鍑哄幓璧拌蛋錛屼簬鏄駭鐢熶竴緋誨垪鐨勪簨浠跺鐞嗭紒
sharkMind.DecideGetOut();
}
}

2.2 鍓栨瀽鏁翠釜緇勬垚...鍏堜粠delegate寮濮嬶紝涓轟簡鑳藉灝佽浜嬩歡錛屾垜浠渶瑕佸厛瀹氫箟涓涓猟elegate錛?br>
   delegate void GetOutEventHandler(Object source, GetOutEventArgs e);

 

2.3 鍋囧畾浣犵殑浜嬩歡澶勭悊鐨勬椂鍊欙紝榪橀渶瑕佷紶閫掍竴浜涘弬鏁幫紝鎵浠ユ垜浠繕闇瀹氫箟涓涓狤ventArgs錛?br>      灝辯畻鍑洪棬鐨勬椂鍊欏甫浠涔堜笢瑗垮惂~~~ ^ ^!
filename錛欸etOutEventArgs.cs

class GetOutEventArgs : System.EventArgs {
// 鍑洪棬甯﹀暐涓滆タ鍛?
private string _takeWhat;

 



public GetOutEventArgs() {
this._takeWhat = "Nothing";
}

public GetOutEventArgs(string strTakeWhat) {
if (strTakeWhat.Equals("")) {
this._takeWhat = "Nothing";

 


}
else {
this._takeWhat = strTakeWhat;
}
}

public string TakeWhat {
get {
return _takeWhat;
}
set {
_takeWhat
= value;
}
}
}

 


2.4 瀵瑰簲鍑哄幓錛屾垜浠氨灞闄愪笅闈㈢殑鍝嶅簲鍔ㄤ綔浜嗭細
filename錛欸etOutSubscribe.cs
            

class GetOutSubscriber {
public void OpenTheDoor(Object source, GetOutEventArgs e) {
// 寮闂?..
Console.WriteLine("Open the door...");
}

public void PutDownWhat(Object source, GetOutEventArgs e) {
// 鏀句笅鎵嬩腑鐨勪笢瑗?..
Console.WriteLine("Put down " + e.TakeWhat + "...");
}

 


public void CloseTheDoor(Object source, GetOutEventArgs e) {
// 鍏抽棬...
Console.WriteLine("Close the door...");
}
}

2.5 浜嬩歡鏄浣曚駭鐢熺殑
filename錛欸etOutPublisher.cs
            

class GetOutPublisher {
//Publisher 璇達細鍠傦紝鎴戞湁涓涓簨浠訛紝璋佹潵澶勭悊錛?/span>
public event GetOutEventHandler OnGetOutHandler;

//Publisher 浜х敓鍏蜂綋鐨勪簨浠?/span>
protected void OnGetOut(GetOutEventArgs e) {
//鏈夎皝鏉ヨ礋璐e鐞嗕簨浠跺悧?
if (null != this.OnGetOutHandler) {
//璁╀粬浠潵澶勭悊鍚?..
OnGetOutHandler(this, e);
}
}

//瀵瑰鍏紑鐨勬帴鍙o紝璋冪敤姝ゆ柟娉曚細浜х敓浜嬩歡.
public void DecideGetOut() {
OnGetOut(
new GetOutEventArgs());
}

}

2.6 褰撴湁浜嗕笂闈㈢殑Publisher涓嶴ubscriber鍚庯紝瑕佹妸瀹冧滑涓茶搗鏉ワ紝闇瑕侀伒寰笅闈㈢殑榪囩▼錛?br>
   Step 1錛氬緩绔婸ublisher Instance錛屽嵆Event Source
   Step 2錛氬緩绔婼ubscriber Instance錛屽嵆Event Handler
   Step 3錛氬緩绔嬩竴涓狣elegate錛屾潵鎵挎帴Subscriber鐨勫叿浣撳姩浣?br>   Step 4錛氭妸寤虹珛鐨凞elegate涓嶦vent榪涜緇戝畾錛屾垜浠О涔嬩負register
   Step 5錛氬閮ㄨ皟鐢紝浜х敓Event錛屾墍鏈夌殑Event Handler鏀跺埌閫氱煡錛屽紑濮嬫墽琛?br>
   鍏蜂綋鍙互鍙傝?.1涓殑涓誨嚱鏁扮殑姝ラ!

2.7 榪愯鐨勭粨鏋滃涓?

Open the door...
Put down Nothing...
Close the door...




]]>
亚洲AV无码1区2区久久| 日本一区精品久久久久影院| 久久笫一福利免费导航| 久久综合给合久久狠狠狠97色69| 久久精品www| 久久人人爽人人爽人人片AV东京热| 欧美一区二区三区久久综合| 国产成人99久久亚洲综合精品 | 国产成人久久AV免费| 久久天天躁狠狠躁夜夜2020| 国产精品9999久久久久| 国产精品99久久久久久宅男小说| 久久99精品久久久久久| 无码八A片人妻少妇久久| 国产精品成人精品久久久| 亚洲欧洲日产国码无码久久99| 国产激情久久久久影院| 国产精品对白刺激久久久| 亚洲欧美国产精品专区久久| 91精品无码久久久久久五月天| 亚洲精品国产美女久久久| 2021最新久久久视精品爱| 久久激情五月丁香伊人| 久久综合丝袜日本网| 久久综合综合久久狠狠狠97色88 | 久久久久久久久无码精品亚洲日韩| 久久精品一区二区国产| 久久夜色精品国产网站| 亚洲人成网亚洲欧洲无码久久| 亚洲а∨天堂久久精品9966| 久久精品国产99久久久香蕉| 国产免费久久精品丫丫| 国产成人久久777777| 亚洲天堂久久精品| 99热都是精品久久久久久| 88久久精品无码一区二区毛片| 国产高潮国产高潮久久久91| 久久人妻少妇嫩草AV无码蜜桃| 亚洲欧美久久久久9999| 久久人人爽人人爽人人av东京热| 日产精品99久久久久久|