本人才疏學淺,在現在的專案中即是程式設計師又是架構設計組組長。在使用wcf技術前看了無數號稱wcf實戰部落格,沒有一篇是我想要的。不過也算學到些皮毛。在此謝過,對你們的善意分享和辛勤勞動表示萬分的感謝。很久不發部落格了,最近研究wcf有些心得發上來和諸位分享一下。還請各位高手跳過,但願不會浪費各位的表情。這裡先上幾張圖,後面再講過程。
架構過程遇到的問題和解決方法。
1、要不要使用dto物件,要不要建立dto層?
解決辦法是巧妙的將實體物件和dto物件合併,這樣少了轉換的過程。感覺還行。
樣本如下:
namespace rtls.entities
[datamember]
public virtual string rolename
[datamember]
public virtual bool active
[datamember]
public virtual string desc
[datamember]
public virtual datetime? timestamp
[datamember]
public virtual string remark
private ilistlist;
//一對多關係:角色(role)有乙個或多個角色功能(sysrolefunc)
[datamember]
public virtual ilistrolefuncs
return list;
}set
} }}
using system;
using system.servicemodel;
namespace rtls.iservices
}namespace rtls.services
public bool deletesysrole(entities.sysrole role)
public ilistgetall(bool isactive)
public ilistgetpageresults(int curpageno, int limit, string name, bool isactive, ref int totalcount)
public ilistgetrolebyuserid(int userid)
public bool modifysysrole(entities.sysrole role)}}
雖然說不推薦這樣用,但是工期有限啊。沒有使用linq,所以要真是dto-->entity,entity-->entity轉換來轉換去的要死人的。因為這個原因曾經打算放棄使用wcf,讓客戶端直接引用bll和model層。後來發現這樣合併了之後可以繼續下去了,就這樣做了。對錯先暫且不論。
2、怎麼除錯和設定wcf引數?
當然是摸索了,跌倒,跌倒...爬起來,再來!上幾張圖:
3.乙個winnt服務如何host多個wcf服務?
protected override void onstart(string args)
開始監聽uri為:",
serviceelement.name, serviceelement.endpoints[0].address.tostring()));
};servicehost.open();
}
}這個辦法是在吉日大哥的通用許可權元件裡面看到的,這裡對吉日大哥表示衷心的感謝!希望大夥尊重一下扎扎實實搞技術的人,我不是為了跟吉日大哥打廣告。做人要懂得感恩!你技術牛,你鄙視我可以,我不羨慕你,也不一定要屌你。
4、怎樣使用泛型工廠類來簡化和重構**?
這個正在嘗試中,畢竟先完成了。
5、使用winnt服務的方式安裝、發布容易嗎?好用嗎?
///
/// 應用程式的主入口點。
///
servicebase servicestorun;
servicestorun = new servicebase
;servicebase.run(servicestorun);
想知道怎樣除錯服務程式像除錯控制台程式一樣嗎? 把服務的onstart方法標記為public new .預設是protected override.然後像下面那樣取消那些注釋,並注釋上面 的**就ok了。
//var shostsvr = new rtlshostsvr();
}
我對SOA的反思 SOA架構的本質
年初的時候,寫過一篇名為 國內eai正當時,bpm為時尚早,workflow持續增長,soa依然概念 的blog日誌。那個時候,我認為soa還依然是個很 虛 的概念。而現在,我只能說 sorry,那時候的我,錯了。soa已經不再是概念,而是乙個實實在在的構架了。在寫完那篇帖子之後,我一直在反思soa...
我對SOA的反思 SOA架構的本質
年初的時候,寫過一篇名為 國內eai正當時,bpm為時尚早,workflow持續增長,soa依然概念 的blog日誌。那個時候,我認為soa還依然是個很 虛 的概念。而現在,我只能說 sorry,那時候的我,錯了。soa已經不再是概念,而是乙個實實在在的構架了。在寫完那篇帖子之後,我一直在反思soa...
我對SOA的反思 SOA架構的本質
年初的時候,寫過一篇名為 國內eai正當時,bpm為時尚早,workflow持續增長,soa依然概念 的blog日誌。那個時候,我認為soa還依然是個很 虛 的概念。而現在,我只能說 sorry,那時候的我,錯了。soa已經不再是概念,而是乙個實實在在的構架了。在寫完那篇帖子之後,我一直在反思soa...