资源描述:
《c 三层架构及事务处理(c three layer architecture and transaction processing)》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、C#三层架构及事务处理(C#threelayerarchitectureandtransactionprocessing)C#threelayerarchitectureandtransactionprocessingBLLDAListhebusinesslogiclayer,dataaccesslayer,theDALonlytimexcisioncheckoperation,andtheBLLlayercombinesthemethodofDAL,toachievesomebusinesslogic(i.e.,thecalculationofwhat)and
2、thenpushedtothepresentationlayer.======================================================================================1.,youneedtouseRemotingTechnology2.transactionprocessingHerearemyannotationsandcodeforsharedtransactionsinoneofmysharedtierapplications,thesameprogram,anddataaccessa
3、pplications.Situationalhypothesis:Forexample,foraOrderorder,themaintablewillcorrespondtoaEntitysuchasA,fromthetablewouldcorrespondtoanumberofEntitysuchasBx,theywillcalltheirpreservationmethodsrespectivelythecorrespondingEntityDAOandtheirpreservationmethodsintheirrespectiveimplementat
4、ionsuccess/failureandmaystartatransactionandcommit/rollbackinexecutionintheprocessof.Butasawholeoftheorder,A,Bx,theyshouldbeinthesametransaction.ForOracle,youcan'tnesttransactions,foroneisagenericapplication,andtheotherisGIS.Howdoyouunifythetwo?Theansweristouse.Net'senterpriseservice
5、library,EnterpriseServices,todotransactionprocessingusingCOM+MSTS.Inthisway,AandBcanindependentlyapplyandstarttheirowntransactions,ortheysimplyinheritfromSystem.EnterpriseServices.ServicedComponent.WhenAandBareintegrated,butwhenyouneedtosharetransactions,MSTScansharetransactionswell.
6、UsingSystem;UsingSystem.EnterpriseServices;UsingWebMIS.EntityDAO;NamespaceSureKam.IBM.BusinessRules{TheuseofCOM+/MSTS,sharedA,Bxtransaction[Transaction(TransactionOption.Required)]PublicclassOrder:System.EnterpriseServices.ServicedComponent{Public,bool,Save(EntityBase,A,EntityCollect
7、ion,Bx){BoolblnSuccess=true;Try{//savethemaintableA_EntityDAOmain=new,A_EntityDAO();BlnSuccess=main.Save(A);If(blnSuccess){//savedetailsB_EntityDAOdetail=null;Foreach(EntityBase,B,in,Bx){B_EntityDAOdetail=new,B_EntityDAO();BlnSuccess=detail.Save(B);If(...BlnSuccess){Break;}}}}Catch(E
8、xception,ex)