代码改变世界

随笔分类 -  MS Enterprise Library

微软企业库5.0学习笔记(三十五)数据访问模块 DataSet以及数据库事务

2010-05-16 11:52 by Virus-BeautyCode, 5811 阅读, 收藏, 编辑
摘要: 使用DataSet进行工作  使用Database类的ExecuteDataSet方法获取DataSet对象,在DataSet对象中,默认的表名称依次为Table,Table1,Table2.。。。。。。。。。。。。  如果你想要将数据加载到一个已经存在的DataSet对象中,可以使用LoadDataSet方法。  代码 Code highlighting produced by Actipro ... 阅读全文

微软企业库5.0学习笔记(三十四)数据访问模块 各种获取数据的方式

2010-05-16 10:33 by Virus-BeautyCode, 4939 阅读, 收藏, 编辑
摘要: 以对象形式从数据库获取数据  现代的很多编程技术都集中在“数据就是对象”这个概念。如果你在应用层之间使用Data Transfer Objects (DTOs)传输数据的话,这个方法就很有用,使用ORM实现一个数据访问层,或者是客户端查询技术,例如LINQ。  数据库访问模块实现了这个功能,允许你执行SQL或者是存储过程,可以返回一个对象序列,但是要求序列实现IEnumer... 阅读全文

微软企业库5.0学习笔记(三十三)数据访问模块

2010-05-14 07:08 by Virus-BeautyCode, 9274 阅读, 收藏, 编辑
摘要: 前言  鉴于企业库5.0已经发布正式版,同时有广大读者的要求(臭屁一下,o(∩_∩)o...),后面文章的内容和代码将基于Enterprise Library5.0和Unity2.0来写,感谢大家的一贯支持。  正文  数据库访问模块都能实现哪些功能呢?数据库访问模块抽象类你正在使用的数据库,提供了一些列接口,使得你可以更容易的实现常用的数据库访问功能。例如:使用Datab... 阅读全文

微软企业库4.1学习笔记(四十一)依赖注入模块Unity 简介

2010-05-07 13:41 by Virus-BeautyCode, 3218 阅读, 收藏, 编辑
摘要: 模块Unity是一个轻量的、可扩展的依赖注入容器,支持构造函数注入、属性注入、方法调用注入。你可以用它创建企业库对象,也可以创建自定义的业务对象。Unity和企业库中的其他模块有一些不同点:  你可以独立的使用Unity模块来实现依赖注入技术,不需要其他模块的辅助。  Unity支持用配置文件来准备容器,也支持在运行的时候用代码动态注册依赖关系。  Unity和企业库的核心库没有依赖关系。它包含了... 阅读全文

微软企业库4.1学习笔记(三十七)日志模块 在应用中使用日志模块

2010-05-06 19:51 by Virus-BeautyCode, 4623 阅读, 收藏, 编辑
摘要: 上图是一个日志模块的基本配置,本节我们就来讲述一些关于他的内容和代码示例。  默认情况下,在web.config文件中的配置信息是明文的,你可以用.NET自带的加密解密保护机制将配置信息加密,也可以用企业库提供的保护机制。在配置工具中就可以选择,如下图所示   无论你选择那一种,保存之后,你打开web.config文件,就会发现原来明文的日志配置节,变成了下面的加密格式(不用开发者操心解密的事情,... 阅读全文

微软企业库4.1学习笔记(三十六)日志模块 简介

2010-05-06 17:34 by Virus-BeautyCode, 3602 阅读, 收藏, 编辑
摘要: 日志模块企业库的日志模块简单的实现了日志功能的常用功能。开发者可以利用模块在下面的位置记录信息: 事件日志 电子邮件 数据库 消息队列 文本文件 WMI的事件查看器 自定义的位置模块为记录在任何位置的日志信息都提供了一系列接口。在你的应用中不需要指明信息的目的地。配置信息决定了是否记录日志,以及日志记录的位置。这就意味着开发者不需要修改应用代码就可以变更日志的行为。 本节包含下面的内容: 简介 使... 阅读全文

微软企业库4.1学习笔记(三十二)数据访问模块 在应用中使用数据访问模块

2010-05-04 22:20 by Virus-BeautyCode, 3767 阅读, 收藏, 编辑
摘要: 本篇讲述如何在应用中使用数据访问模块。首先,讲述如何配置模块并且和应用整合;其次是,如何使用数据访问模块完成常用的功能,例如,获取单条数据,或者是使用DataSet返回多条数据;最后,讲述一些关系连接管理、参数处理、异常处理的主题。  主要包括下面的主题:  配置模块  在应用中添加代码  创建Database对象  创建DbCommand对象  管理连接  使用TransactionScope类... 阅读全文

微软企业库4.1学习笔记(三十一)数据访问模块 简介

2010-05-04 00:09 by Virus-BeautyCode, 3116 阅读, 收藏, 编辑
摘要: Unity模块对我来说学习起来还是有一定的难度的,很多东西都是第一次学习,有些东西理解的不透侧,所以Unity后面的内容想要等自己继续理解一下,后面给大家补充回来吧,先开始后面的章节。大概看了一下Unity后面的内容,计划给它留下四篇blog的地方,所以数据访问模块从三十一开始,感谢大家的支持。  下面我们回到正题。  Data Access Appliction Block 简介  企业库的数据... 阅读全文

微软企业库4.1学习笔记(二十六)Unity依赖注入模块3

2010-05-02 23:04 by Virus-BeautyCode, 2651 阅读, 收藏, 编辑
摘要: 配置运行时支持数组  [代码][代码].ConfigureInjectionFor<Foot>(newInjectionConstructor(newResolvedArrayParameter<IBar>());代码 Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.Cod... 阅读全文

微软企业库4.1学习笔记(二十五)Unity依赖注入模块2

2010-05-01 23:14 by Virus-BeautyCode, 4029 阅读, 收藏, 编辑
摘要: Unity模块的亮点  Unity模块包括了下面的特点  提供了一个创建对象,以及依赖的对象的方法  提供的RegisterType方法用来在容器中注册类型和映射,Resolve方法可以返回任何依赖对象的实例。  提供控制反转IOC功能,通过预先配置注入类的对象来实现。你可以在构造函数中指明一个类或者接口(构造函数注入),或者是使用attribute的属性注入,和方法调用注入。  支持容器继承,容... 阅读全文

微软企业库4.1学习笔记(二十四)Unity依赖注入模块 简介

2010-05-01 10:04 by Virus-BeautyCode, 2935 阅读, 收藏, 编辑
摘要: 企业库的依赖注入模块Unity是一个轻量的、可扩展的依赖注入容器,支持构造函数注入、属性注入、方法调用注入。你可以用它创建企业库的对象,或者是自定义的对象。但是,Unity模块和企业库中的其他模块有很多的不同点:  你可以在不安装企业库的情况下,直接使用Unity模块的依赖注入功能。  Unity模块可以通过配置信息来准备容器,也可以在运行的时候在代码中动态创建依赖关系。  Unity模块不依赖于... 阅读全文

微软企业库4.1学习笔记(二十三)加解密模块3 示例代码

2010-04-30 23:17 by Virus-BeautyCode, 2215 阅读, 收藏, 编辑
摘要: 加密解密模块可以满足常用的对称加解密和hash功能要求。在应用中加入模块,需要下面的步骤:  1)添加对模块的程序集引用。添加对程序集Microsoft.Practices.EnterpriseLibrary.Security.Cryptography.dll的引用。  2)添加对程序集Microsoft.Practices.ObjectBuilder2.dll和Microsoft.Practic... 阅读全文

微软企业库4.1学习笔记(二十二)加解密模块2 在应用中使用加密解密

2010-04-29 00:05 by Virus-BeautyCode, 2361 阅读, 收藏, 编辑
摘要: 本节主要讲述在应用中如何使用加密解密模块,包括修改配置实现特殊的任务,如何在代码中使用,例如加密数据。这一切都假定你直接使用模块,不进行修改和扩展。主要包含下面两个部分:  配置模块  在代码中使用模块  1、配置模块  1.1在配置文件右键选择【新建】-【Cryptography Application Block】  图22.1  1.2配置自动添加Cryptography Applicati... 阅读全文

微软企业库4.1学习笔记(二十一)加解密模块1 简介

2010-04-28 05:46 by Virus-BeautyCode, 3204 阅读, 收藏, 编辑
摘要: 加解密模块使得开发者可以很容易的在应用中使用加解密的相关功能,例如,加密信息,创建一个数据的hash值,比较hash值,看看数据是否被修改。  模块具有下列功能:  减少实现标准功能的开发代码,加解密模块实现了常用的加解密功能。  在应用和跨企业之间提供一致的加解密策略。  降低了开发者为应用建立一致的加解密架构所需的学习曲线  是可扩展的,意味着它支持自定义加解密的provider  一、加解密... 阅读全文

微软企业库4.1学习笔记(二十)缓存模块8 性能计数器

2010-04-27 04:01 by Virus-BeautyCode, 2612 阅读, 收藏, 编辑
摘要: 缓存模块包含下列计数器  性能计数器解释Cache Expiries/sec缓存项的过期比例 Cache Hit Ratio读取缓存项的比例,一次读取指的是请求的项在缓存中。 Cache Hit/sec缓存的每秒命中率Cache Misses/sec缓存的每秒丢失率,和命中率相反,就是请求项不再缓存中Cache Scavenged Item/sec缓存清除比例Total of Cache Acce... 阅读全文

微软企业库4.1学习笔记(十九)缓存模块7 扩展和修改缓存模块

2010-04-25 23:03 by Virus-BeautyCode, 2234 阅读, 收藏, 编辑
摘要: 缓存模块可以满足大部分的缓存使用情形。但是,还是会有你想要自定义一些模块行为,来满足应用特殊需求的时候。你可以通过两个方式来达到目的:  通过缓存模块提供的扩展点,扩展现有功能  修改源代码  一、扩展缓存模块  通过设计好的扩展点来扩展应用的功能。典型的方式为,写一个自定义的类,实现某个接口,或者是继承某个抽象类。因为这些自定义类是在你的应用中使用,你不需要修改和重新编译模块。  你可以自定义一... 阅读全文

微软企业库4.1学习笔记(十八)缓存模块6 缓存的设计目的

2010-04-25 00:24 by Virus-BeautyCode, 3574 阅读, 收藏, 编辑
摘要: 设计缓存的目的  缓存模块可以用来实现下列功能:  提供了一系列的API  它使得开发者不需要学习很多内部的工作机制,就可以将常用的缓存功能加入应用  使用企业库的配置工具很容易配置  性能高效  线程安全,内部的代码考虑到了在多个线程调用,没有非预期的内部交互。  使用后端存储,使得发生以外也可以保持数据的完整无缺。  保证了内存中的数据和后端存储保持数据同步。  本节讲述一些缓存模块设计的亮点... 阅读全文

微软企业库4.1学习笔记(十七)缓存模块5 缓存的典型用法

2010-04-24 15:01 by Virus-BeautyCode, 2715 阅读, 收藏, 编辑
摘要: 本节介绍开发者在使用缓存的时候,常用的方法。每个方法在实际开发中都可以找到对应的用处,会有代码示例。分两个部分介绍,第一个部分包括下面的一些用法:  向缓存添加数据,Add方法,如何向缓存中添加数据,设置过期,设置优先级。  从缓存中删除数据,Remove方法  从缓存中获取数据,GetData方法  清空缓存,Flush方法  第二部分介绍缓存的加载。  1.1向缓存中添加数据  需要缓存的数据... 阅读全文

微软企业库4.1学习笔记(十六)缓存模块4 服务器场中的缓存使用

2010-04-23 23:38 by Virus-BeautyCode, 2318 阅读, 收藏, 编辑
摘要: 服务器场中的缓存使用  单一的CacheManager不能跨应用程序域共享。服务端应用大多部署在多台服务器上,每台服务器的内存中都有一份缓存的数据。对于一台机器上面有多个进程,也是一样的,包括每个运行在自己的进程中的企业组件,每个进程都有一份缓存的数据。  不同的应用不能使用同一个数据库作为后端存储,在同一个数据库作为不同的应用的后端存储,可能会导致不可预料的问题,不推荐这么做。  当在多个进程中... 阅读全文

微软企业库4.1学习笔记(十五)缓存模块3 使用数据库作为后端存储

2010-04-23 07:20 by Virus-BeautyCode, 3020 阅读, 收藏, 编辑
摘要: 配置缓存模块使用数据库作为后端存储1) 在CacheManager节点上点击右键,选择新建【Database Cache Storage】2)在配置中自动加入数据访问模块的配置信息3)点击Data Cache Storage节点,右侧的DatabaseInstance属性显示的是数据库连接字符串的名称,它和数据访问配置中的一个配置关联的,你可以通过输入或者下来来选择一个数据访问配置。可以重新命名N... 阅读全文