|
在上一篇講到,如果將BLL層的每一個類都轉(zhuǎn)化為*.svc,這是一個不實在的想法。它會使服務變化復雜,難于管理。
這時候,我們第一時間想到的是23個簡單開發(fā)模式中的Factory,在這里,F(xiàn)actory正好派上用場。我們把這個Factory稱之為管道(pipeline) ,通過這個管道客戶端可以隨意調(diào)用服務器BLL層里面的類。
(關(guān)于管道的概念,建議參考Cory Isaacson的杰作《多核應用架構(gòu)關(guān)鍵技術(shù)—軟件管道與soa》)
當你使用B/S方式開發(fā)UI層時,只要了解此開發(fā)模式,使用Ajax加上WCF里面的WebHttpBinding綁定和WebHttpBehavior行為,可以說是天衣無縫的組合。
首先,開發(fā)一個數(shù)據(jù)契約,其中包括程序集名稱,類名,構(gòu)造函數(shù)的參數(shù),方法名,方法中的參數(shù):
[DataContract]
public class Communication
{
[DataMember]
public string Assembly
{
get;
set;
}
[DataMember]
public string Class
{
get;
set;
}
[DataMember]
public object[] ConstructedParameters
{
get;
set;
}
[DataMember]
public string Method
{
get;
set;
}
[DataMember]
public object[] Parameters
{
get;
set;
}
}
NET技術(shù):使用WCF實現(xiàn)SOA面向服務編程——使用AJAX+WCF服務頁面開發(fā),轉(zhuǎn)載需保留來源!
鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯(lián)系我們修改或刪除,多謝。