學著除錯,學著明白三層結構!

iDotNetSpace發表於2008-09-08

敘述順序是:先從呼叫的層次逐層深入進去,再從構造的層次逐層反推回來。

以前取資料是直接寫一堆SQL連線,然後根據連線直接用SQL語句得到資料;

現在呢,從WEB層開始,就得學著調Facade(即中間層)層的方法,通過Facade層的方法呼叫DAOFactory,然後通過DAOFactory裡的方法呼叫IDAO(即資料介面),從IDAO介面進去,就到了DAO,DAO裡寫的,即是Facade層裡方法的實現。而DAO的實現裡,包含了對PO的呼叫及SQL查詢語句,PO即是資料庫資料的實體形式。此外,DAO裡還包含了對DbHelperSQL的呼叫,而DbHelperSQL裡寫的,就是不懂三層結構時寫的那些SQL連線語句。

如此一來,迴圈一圈,將資料取出。

而從構建的角度看,順序是這樣的:

先構建資料庫相應的PO,呼叫PO的DAO,介面IDAO及呼叫介面的DAOFactory;

然後,構建包含SQL連線語句的DbHelperSQL,供DAO呼叫;

再次,構建中間層Facade,寫一個方法來呼叫DAOFactory;

最後,在WEB層裡呼叫Facade層的方法,再將PO寫成一個List的形式,List abc= new List(),將方法取出的值放進這個List裡;

若要進行XML序列化,則將此List放進一個Session裡,Session["CDE"] = abc;

到時若是需要取出Session,只需List xyz = Session["CDE"] as List;

然後即可將其序列化:

  List xyz = Session["CDE"] as List;
        string file = "D:\\PBC.xml";
        TextWriter writer = new StreamWriter(file);
        XmlSerializer sr = new XmlSerializer(typeof(List));
        sr.Serialize(writer, xyz );
        writer.Close();

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/12639172/viewspace-442339/,如需轉載,請註明出處,否則將追究法律責任。

相關文章