内容简介
Thisbookprovidesastep–by–stepguidefordevelopinganASP.NET3.5applicationusingthelatestfeaturesinVisualStudio2008.TheProblemDesignSolutionseriesbyWroxisuniquebecauseitdescribesalargecasestudyandbuildsanentiresolutionchapterbychapterforeachincrementalstep.ThisbookusesawidevarietyofnewfeaturesinVisualStudio2008,explainseachindetail,andproducesasolutionthatyoucanuseasastartingpointforyourownapplications.Ifyouareresponsiblefordesigningordevelopingenterprise–wideapplications,departmentalapplications,portals,oranylineofbusinessapplication,thenthisbookisforyou.Manyapplicationshaveasimilarsetoffeatures,andthisbookbuildsanapplicationwithsomeofthemostcommonfeaturesofenterpriseapplications.Let’sfaceit:Everyapplicationhasthesamegeneralsetoffeatures,butimplementedinadifferentway.Adatabasesitsinthebackendandyou,asthedeveloper,areresponsibleforenablinguserstoadd,update,select,anddeleterecords.Ifonlyitwerethatsimple,no?Therealdevelopmentworkstartswhenyousitwithusersandtrytounderstandthebusinessprocessandwhytheyneedaneworimprovedsysteminthefirstplace.AlotofcompanieshavedepartmentsthatuseExcelandAccesswizardstocreatesmallsystemsthateventuallybecomealifelineforsomepartofthebusiness.Usuallysomethingbadhappensbecauseofthenatureofthetooltheyareusing.Senior–levelmanagementiscalledin,projectmanagersarehired,programmersarecontracted,andtheProjectManagementOffice(PMO)iscalledtosavetheworld.Suddenlythislooselydefinedprocessishighpriorityandpeoplewantdocumentedstandardoperatingprocedures,auditreports,moreproductivity,lesspeople,andofcourseasystemthatcandoitall,whichiswhereyoucomein.Whenyouthinkaboutit,it’saprettydauntingtask.You’reexpectedtobecomeanexpertinsomeoneelse’sbusinessprocess,flawsandall,andcreateasystemthatthecompanywillrelyonasthebackbonefortheirexistence.OK,maybeI’mexaggeratingjustalittlebit,butwhenyougolookingforthatraiseyoumightwanttophraseitthatway.Thisbookwillgiveyouthetoolsnecessarytobuildaframeworkthatcanbeextendedtocreateasolutiontosolveyourcompany’sproblems.Thedesignpatternusesthenormalthreelayers,theuserinterface(UI),thebusinesslogiclayer(BLL),andthedataaccesslayer(DAL),butalsobuildstheclassesineachlayerthatencapsulatecommonbusinessrulessuchasrole–basedsecurity,workflow,reporting,dynamicmenus,dataentry,dynamicquerying,notifications,exceptionhandling,andauditing.Asthebookguidesyouthroughthecompletesolution,eachbusinessrequirementisthoroughlyexaminedandsomeofthelatestenhancementsinASP.NET3.5andVisualStudio2008areusedtoimplementtheminareusableframework.Enterpriseapplicationsaretypicallycomplex,andtheteamsthatbuildenterpriseapplicationscomeinallshapesandsizes.Someoftherolesincludeaprojectsponsor,aprojectmanager,businessanalysts,anarchitect,UIdevelopers,middle–tierdevelopers,databasedevelopers,and,ifyou’rereallylucky,testers.Justasidenote:Usersarenottesters.Ifyoueverhavethepleasureofworkingwithprofessionaltesters,you’llrealizehowimportanttheyareintheprocess,andhowtheytrulyare“quality”assuranceengineers.Unfortunately,alotofcompaniesaren’twillingtoinvestinprofessionaltesters,sotheusersand/ordevelopersendupassumingthatrole.Thisbookismainlyfocusedonthearchitectanddevelopers,buttestersmayfinditvaluableaswelltohelpthemunderstandtheplumbingthatgoesintodevelopingandarchitectinganenterpriseapplication.Thisbookisfortheintermediatetoseniorleveldeveloperorsystemarchitect.ItwouldbehelpfulifyouhaveexperiencewithVisualStudio,the.NETFramework,ASP.NET,andC#becausethatiswhatthesamplesarewrittenin,butthedesignpatterncouldbeusedinanylanguage.Thebookisfocusedonenterpriseapplications,butthepatterncouldbeusedforanytypeofapplicationthathasawebfrontendandconnectstoadatabase.Theapplicationframeworkbuiltinthisbookprovidesafoundationthatcanbeextendedtomeetthespecificbusinessneedsofyourorganization.ThesampleapplicationinthisbookisbuiltusingVisualStudio2008,ASP.NET3.5,C#,andSQLServer2005.Eachchaptergoesintogreatdetail,withplentyofcodesamples,andusessomeofthenewfeaturesinVisualStudio2008andthelanguageenhancementsinthe.NETFramework3.5.ThesolutionincludesexamplesfortechnologiessuchasLINQtoSQL,masterpages,customcontrols,GridViews,businessobjects,dataobjects,andCrystalReports.SomeofthelanguageenhancementsdiscussedincludeLINQ,extensionmethods,partialmethods,automaticproperties,anonymoustypes,lambdaexpressions,andobjectinitializers.Ofcourse,Irealizethatthecodeiswhatmostdevelopersareinterestedin,andeachchapterprovidesnumerousexamples.TheProblemDesignSolutionseriesisjustthat.Eachchapterhasthreesectionswithadescriptionoftheproblemtobeaddressed,thedesignconsiderationsforchoosingasolutionfortheproblem,andthesolutionthatultimatelyaddressestheproblem.Thesolutionincludesthebulkofthecode.Eachchapterbuildsuponthepreviouschapter,anditisrecommendedthatyoureadtheminorder.Thebaseclassesthataredescribedinthefirstfewchaptersarecriticaltoanunderstandingoftherestofthebook.Laterchaptersbuilduponthebaseclassesandextendtheirfunctionalityinallthreelayersoftheapplication.