C#企业应用开发艺术:CSLA.NET框架开发实战(图灵程序设计丛书·微软技术系列)(Expert C# 2008 Business Objects)
分類: 图书,艺术,设计,
品牌: 霍特卡(Rockford Lhotka)
基本信息·出版社:人民邮电出版社
·页码:599 页
·出版日期:2010年04月
·ISBN:9787115222206
·条形码:9787115222206
·版本:第1版
·装帧:平装
·开本:16
·正文语种:中文
·丛书名:图灵程序设计丛书·微软技术系列
·外文书名:Expert C# 2008 Business Objects
产品信息有问题吗?请帮我们更新产品信息。
内容简介CSLA.NET框架成为了微软.NET平台上最广泛应用的开发框架之一,本书介绍了CSLA.NET 3.6架构背后的构思过程,描述了怎样搭建支持这个架构的框架,如何创建应用程序的业务对象,并且展示了如何使用这个框架创建基于业务对象的WPF、Web Forms和WCF服务应用程序。 本书适用于所有C#开发人员。
目录
目录 第1章分布式架构1 1.1逻辑和物理架构1 1.1.1N层和SOA3 1.1.2复杂性3 1.1.3逻辑模型和物理模型之间的关系4 1.1.45层逻辑架构8 1.1.5应用逻辑框架12 1.1.6展望未来15 1.2管理业务逻辑15 1.2.1可能的业务逻辑位置16 1.2.2业务对象18 1.2.3移动对象21 1.3架构和框架27 1.4小结28 第2章框架设计29 2.1基本设计目标30 2.1.1验证规则和业务规则31 2.1.2跟踪对象是否改变32 2.1.3集成授权32 2.1.4子对象的强类型集合33 2.1.5多级撤销能力34 2.1.6用户界面开发者的简单抽象模型35 2.1.7支持数据绑定40 2.1.8对象持久性和对象——关系映射43 2.1.9自定义身份验证48 2.2设计框架49 2.2.1创建业务对象49 2.2.2多级撤销功能56 2.2.3数据绑定支持58 2.2.4业务和验证规则60 2.2.5数据门户62 2.2.6自定义身份验证74 2.2.7整合授权75 2.2.8辅助类型和类76 2.3命名空间组织79 2.4小结80 第3章面向对象应用程序设计82 3.1责任驱动设计83 3.1.1用例或基于故事的分析83 3.1.2带有责任的对象83 3.1.3为用例存在的对象83 3.1.4行为的标准化84 3.2应用程序需求84 3.3对象设计88 3.3.1最初的设计88 3.3.2修订设计89 3.3.3自定义身份验证99 3.4使用CSLA.NET99 3.5数据库设计102 3.5.1创建数据库103 3.5.2PTracker数据库104 3.5.3Security数据库112 3.6小结113 第4章CSLA.NET对象构造型114 4.1基本术语和对象图的结构114 4.2业务对象生命周期116 4.2.1对象的创建117 4.2.2取得对象121 4.2.3更新可编辑的对象123 4.2.4销毁和终结对象128 4.3业务类结构130 4.3.1Serializable或DataContract特性130 4.3.2通用区域132 4.3.3非公有的默认构造函数136 4.4小结136 第5章CSLA.NET对象模板137 5.1业务类的结构137 5.1.1可编辑的根业务对象137 5.1.2可编辑的子业务对象143 5.1.3可切换的对象147 5.1.4可编辑的根集合150 5.1.5可编辑的子集合152 5.1.6只读的业务对象153 5.1.7只读子对象155 5.1.8只读集合156 5.1.9只读子集合157 5.1.10命令对象158 5.1.11名称/值列表对象159 5.1.12动态可编辑集合161 5.1.13动态可编辑根对象162 5.1.14条件对象163 5.2小结165 第6章业务框架实现166 6.1CSLA.NET项目结构167 6.1.1项目目录结构167 6.1.2项目设定167 6.1.3项目签名168 6.1.4支持本地化169 6.2Csla命名空间170 6.2.1ApplicationContext171 6.2.2BusinessBase175 6.2.3BusinessListBase177 6.2.4CommandBase179 6.2.5CriteriaBase179 6.2.6DataPortal180 6.2.7EditableRootListBase180 6.2.8NameValueListBase180 6.2.9PropertyInfo181 6.2.10ReadOnlyBase182 6.2.11ReadOnlyListBase183 6.2.12SingleCriteria184 6.2.13SmartDate184 6.2.14Utilities185 6.3Csla.Core命名空间185 6.3.1BusinessBase186 6.3.2ExtendedBindingList186 6.3.3IBusinessObject接口187 6.3.4ICommandObject接口188 6.3.5IEditableBusinessObject接口188 6.3.6IEditableCollection接口188 6.3.7IReadOnlyObject接口188 6.3.8IReadOnlyCollection接口188 6.3.9ISavable接口189 6.3.10ISmartField接口189 6.3.11ISupportUndo接口190 6.3.12ITrackStatus接口190 6.3.13IUndoableObject接口190 6.3.14ObjectCloner类191 6.3.15ReadOnlyBindingList192 6.4小结193 第7章属性声明194 7.1声明属性194 7.1.1属性声明的选项196 7.1.2RegisterProperty和继承200 7.2PropertyInfoManager202 7.3字段管理器204 7.3.1FieldManager属性204 7.3.2FieldDataManager类205 7.4小结211 第8章对象状态管理212 8.1对象状态属性212 8.1.1ITrackStatus接口212 8.1.2IsNew213 8.1.3IsSelfDirty214 8.1.4IsDirty217 8.1.5IsSelfValid217 8.1.6IsValid218 8.1.7IsSavable218 8.1.8IsDeleted219 8.2小结220 第9章父子关系221 9.1可编辑的父对象221 9.1.1父子对象之间的交互222 9.1.2IParent接口226 9.1.3声明Child属性226 9.2可编辑的父集合229 9.3小结232 第10章数据绑定233 10.1Windows窗体233 10.1.1对象数据绑定233 10.1.2集合数据绑定240 10.1.3控件和辅助对象240 10.1.4与多个根对象协同工作254 10.2WPF255 10.2.1对象数据绑定255 10.2.2集合数据绑定257 10.2.3控件和帮助对象258 10.3Web窗体269 10.4小结271 第11章业务和验证规则272 11.1规则类型272 11.2Csla.Validation命名空间273 11.2.1RuleHandler委托273 11.2.2RuleArgs类274 11.2.3DecoratedRuleArgs类274 11.2.4RuleMethod类275 11.2.5RuleDescription类277 11.2.6ValidationRules类277 11.2.7BrokenRule类283 11.2.8BrokenRulesCollection类284 11.2.9ValidationException286 11.3通用验证规则286 11.4小结290 第12章身份验证和授权291 12.1身份验证291 12.1.1Csla.ApplicationContext.User属性292 12.1.2Windows身份验证292 12.1.3自定义身份验证293 12.2授权297 12.2.1类型级别授权297 12.2.2属性和方法级别的授权300 12.3小结304 第13章多级撤销305 13.1使用撤销306 13.2实现撤销306 13.2.1ISupportUndo接口307 13.2.2NotUndoableAttribute类308 13.2.3UndoableBase类308 13.2.4BusinessBase类317 13.2.5BusinessListBase类319 13.3小结329 第14章LINQ to CSLA330 14.1使用LINQ降低代码量330 14.2LINQ to CSLA.NET概览331 14.2.1将来自于LINQ to Objects的结果进行绑定331 14.2.2索引的LINQ查询331 14.3LINQ和投影331 14.3.1标识投影和LinqBindingList332 14.3.2理解LinqBindingList332 14.4使用CSLA.NET进行索引检索的概览333 14.4.1序列化和索引334 14.4.2索引模式334 14.5CSLA.NET的IQueryable实现335 14.5.1理解表达式树335 14.5.2深入探索IQueryProvider336 14.5.3LinqBindingList338 14.6被索引的LINQ和CSLA.NET338 14.6.1管理索引集338 14.6.2表达式求值339 14.6.3索引对象模型340 14.7小结345 第15章持久性和数据门户346 15.1数据门户设计346 15.1.1业务逻辑和数据访问的分离347 15.1.2根对象和子对象的统一编码模型347 15.1.3通道适配器和消息路由器模式348 15.1.4分布式事务支持352 15.1.5上下文和位置透明性353 15.1.6授权服务调用356 15.1.7异步行为357 15.1.8对象工厂357 15.2基类的支持358 15.2.1工厂方法和条件359 15.2.2Save方法361 15.2.3使用字段管理器更新子对象364 15.2.4更新可编辑的集合365 15.3反射和动态方法调用366 15.3.1MethodCaller类366 15.3.2LateBoundObject类367 15.4通道适配器368 15.4.1RunLocal特性368 15.4.2DataPortal类369 15.4.3DataPortal类377 15.4.4IDataPortalServer接口379 15.4.5IDataPortalProxy接口380 15.4.6LocalProxy类380 15.4.7WcfProxy类381 15.4.8WcfPortal类382 15.5分布式事务支持383 15.5.1Transactional特性383 15.5.2Csla.Server.DataPortal对象384 15.5.3ServicedDataPortal类387 15.5.4TransactionalDataPortal类389 15.6消息路由器389 15.6.1DataPortalSelector类390 15.6.2SimpleDataPortal类391 15.6.3FactoryDataPortal类396 15.6.4FactoryLoader属性396 15.6.5ChildDataPortal类399 15.7上下文和位置透明性400 15.7.1DataPortalContext类400 15.7.2DataPortalResult类403 15.7.3Csla.Server.DataPortal-Exception403 15.8小结404 第16章其他框架特性405 16.1使用SmartDate处理日期406 16.1.1初始化结构体408 16.1.2支持空日期408 16.1.3转换函数409 16.1.4文本函数410 16.1.5日期函数411 16.1.6数据库格式411 16.2数据访问412 16.2.1管理数据库连接和上下文412 16.2.2SafeDataReader417 16.2.3DataMapper420 16.3Windows工作流基�425 16.3.1从对象中启动工作流426 16.3.2WorkflowManager类426 16.4小结431 第17章对业务对象的实现432 17.1ProjectTracker对象432 17.2设置项目433 17.3业务类的实现434 17.3.1Project434 17.3.2ProjectResources443 17.3.3ProjectResource445 17.3.4Assignment447 17.3.5RoleList448 17.3.6Resource和相关的对象449 17.3.7ProjectList和ResourceList450 17.3.8Roles451 17.3.9Role453 17.3.10实现Exists方法455 17.4自定义身份验证455 17.4.1PTPrincipal455 17.4.2PTIdentity457 17.5小结458 第18章数据访问的示例459 18.1数据访问层设计459 18.1.1数据访问模型459 18.1.2平衡设计问题465 18.2数据访问对象467 18.2.1使用LINQ to SQL467 18.2.2ProjectTracker.DalLinq项目468 18.3业务类的实现469 18.3.1Project470 18.3.2ProjectResources478 18.3.3ProjectResource479 18.3.4RoleList482 18.3.5ProjectList和ResourceList484 18.3.6Roles485 18.3.7实现Exists方法487 18.4小结488 第19章WPF用户界面490 19.1WPF中的自定义身份验证490 19.2界面设计491 19.2.1用户控件框架492 19.2.2值转换器496 19.2.3应用程序配置498 19.2.4PTWpf项目设定501 19.2.5MainForm窗口501 19.2.6登录窗口504 19.2.7RolesEdit窗体505 19.2.8ResourceList窗体512 19.2.9ProjectList窗体513 19.2.10ProjectEdit窗体514 19.3小结517 第20章Web窗体用户界面518 20.1Web开发和对象518 20.2状态管理520 20.2.1将状态存储在Web服务器上521 20.2.2将状态传送到客户端,或从客户端传回523 20.2.3状态在文件或者数据库中523 20.3界面设计524 20.3.1应用程序配置526 20.3.2PTWeb站点设置529 20.3.3母版页530 20.3.4登录页面534 20.4业务功能540 20.4.1RolesEdit窗体540 20.4.2ProjectList窗体549 20.4.3ProjectEdit窗体552 20.5小结562 第21章WCF服务界面564 21.1客户端/服务器还是SOA564 21.2WCF服务概览565 21.2.1WCF服务的元素566 21.2.2自定义身份验证572 21.3设计WCF服务界面585 21.3.1服务设计586 21.3.2应用程序配置586 21.3.3PTWcfService站点设置588 21.3.4服务契约和实现589 21.4Web服务消费应用程序实现594 21.4.1生成WCF信息页面594 21.4.2简单的智能客户端595 21.5小结599
……[看更多目录]