前言:現在王大叔養了大批豬,賺了很多錢。但是最近發現養雞也可以賺很多錢,他就像擴展業務開始養雞。又過兩年他發現市場對狗的需求量很大,他開始養狗。那么他改怎么做呢,不可能去修改豬住的地方把鴨子和狗放里面那么維護起來非常不便,那么我們就要進行擴展,在蓋一個鴨圈和一個狗圈。現在我們看下圖
第一步:定義三個接口

1 養豬契約 2 /// <summary> 3 /// 服務契約 4 /// </summary> 5 [ServiceContract] 6 public interface IPigService 7 { 8 [OperationContract] 9 string Pig(); 10 } 11 養鴨契約 12 [ServiceContract] 13 public interface IDuckService 14 { 15 [OperationContract] 16 string Duck(); 17 } 18 養狗契約 19 20 [ServiceContract] 21 public interface IDogService 22 { 23 [OperationContract] 24 string Dog(); 25 }
第二步:實現三個接口內容(我就把它放同一個類,其實不建議這么做,分開好保持功能的單一性便於維護)

1 public class WcfService:IPigService,IDogService,IDuckService 2 { 3 public string Pig() 4 { 5 return "哈嘍,我是養豬專業戶"; 6 } 7 8 public string Duck() 9 { 10 return "哈嘍,我開始擴展養鴨業務"; 11 } 12 13 public string Dog() 14 { 15 return "哈嘍,狗的生意不錯,我也開始擴展"; 16 } 17 }
第三步:我們在此實現服務端

1 其他代碼參考第一篇 2 host.AddServiceEndpoint(typeof(IPigService), binding, ""); 3 host.AddServiceEndpoint(typeof (IDogService), binding, ""); 4 host.AddServiceEndpoint(typeof(IDuckService), binding, "");
第四步:客戶端引用,效果如下
這一篇就講完了比較簡單,但是用處個人覺得蠻大的。下一篇着手寫頭消息的發送和接受