原文:黄聪:Microsoft Enterprise Library 5.0 系列教程(二) Cryptography Application Block (高级) 本章介绍的是企业库加密应用程序模块Cryptographyproviders中为对称加密配置Key文件的3种方式: create a new key  : 使用一串字符串作为Key,然后通过加密保存到一个Key文件中. use an existing DPAPI-protected key file  : 使用一个现有的Key文件进…
原文:黄聪:Microsoft Enterprise Library 5.0 系列教程(二) Cryptography Application Block (初级) 企业库加密应用程序模块提供了2种方式让用户保护自己的数据: Hashingproviders:  离散加密法, 简单来说就是把你的信息保存到内存中后用一个离散值表示并返回给程序,这样在程序中只能看到离散值而不是明文,这样就起到简单的加密效果啦. Cryptographyproviders: 密钥加密法. 用对称加密方法对数据进行加密…
原文:黄聪:Microsoft Enterprise Library 5.0 系列教程(三) Validation Application Block (高级) 企业库验证应用程序模块之配置文件模式: 1.       新建一个控制台应用程序,并创建一个Customer类,其代码如下所示: 代码 ; } }} 2.       运行EntLibConfig.exe, 选择Blocks菜单 ,单击 Add Validation Settings . 3.       点击Validated Typ…
原文:黄聪:Microsoft Enterprise Library 5.0 系列教程(一) Caching Application Block (高级) Caching Application Block 的基本架构如下所示,图中很清楚的写出了Cache Manager可以使用3中方式对数据进行缓存: 1. Null backing store 存储策略   : 默认的存储策略,存储的数据只存储在内存的缓存中,并不持久保存, 它可用于所有支持的应用类型.适合于保存一些临时的数据,或者用于保存当…
http://www.360doc.com/content/13/0918/22/15643_315482318.shtml http://www.360doc.com/content/13/0918/22/15643_315483614.shtml http://www.cnblogs.com/huangcong/archive/2010/05/28/1745909.html http://www.cnblogs.com/happyhippy/archive/2010/08/15/180028…
原文:黄聪:Microsoft Enterprise Library 5.0 系列教程(六) Security Application Block 开发人员经常编写需要安全功能的应用程序.这些应用程序通常需要执行一系列不同的安全操作,而且它们还经常与不同的基础安全提供程序(如 Microsoft Active Directory 目录服务.授权管理器.Active Directory 应用程序模式 (ADAM) 和自定义数据库等)进行交互. 安全应用程序块通过收集开发人员必须执行的许多最常见的安…
原文:黄聪:Microsoft Enterprise Library 5.0 系列教程(四) Logging Application Block 企业库日志应用程序模块工作原理图:   从上图我们可以看清楚企业库日志应用程序模块的工作原理,其中LogFilter,Trace Source,Trace Listener,Log Formatter的信息都可以在Category配置文件中反映出来,通过配置文件,调用LogWriter类的Writer方法,就可以将包含日志信息的LogEntry实体写入…
原文:黄聪:Microsoft Enterprise Library 5.0 系列教程(三) Validation Application Block (初级) 企业库提供了一个很强大的验证应用程序模块,特点是: 可以通过配置为你的程序中特定的类来定义规则集. 是为你的类的公有属性,即对外开放的属性进行验证的. 使用企业库验证应用程序模块的优势: 有助于保持一致的验证方法. 包括大多数标准验证,包括.NET数据类型校验. 它让您可以将多个规则集具有相同的类和该类的成员. 它可以让你申请一个或多个…
原文:黄聪:Microsoft Enterprise Library 5.0 系列教程(一) : Caching Application Block (初级) 本篇文章具体官方解释请参照以下链接: http://msdn.microsoft.com/en-us/library/ff664753%28v=PandP.50%29.aspx MicrosoftEnterprise Library 5.0下载地址: http://www.microsoft.com/downloads/details.a…
原文:黄聪:Microsoft Enterprise Library 5.0 系列教程(十) Configuration Application Block 到目前为止,我们使用的模块都是在同一个配置文件中,这显然是不灵活的,我们希望每个功能模块能独立的在一个配置文件中体现,这样不仅易于管理,易于扩展,也易于阅读和分类.企业库当然考虑到了这个问题并且提供了解决方案,本章就是讲解如何使用Configuration Application Block来将各个模块分割到独立的配置文件中的. 和以前一样…
Download dll: http://www.microsoft.com/en-us/download/confirmation.aspx?id=15104 http://www.cnblogs.com/huangcong/archive/2010/05/31/1748672.html Microsoft Enterprise Library 5.0 系列 http://www.cnblogs.com/huangcong/category/248455.html Enterprise Lib…
原文:黄聪:Microsoft Enterprise Library 5.0 系列教程(七) Exception Handling Application Block 使用企业库异常处理应用程序模块的优势: 它支持整个应用程序体系结构层的异常处理,而不仅限于服务接口的界限. 它使得异常处理策略可以在管理层定义和维护,以便决策人员(可能是系统管理员和开发人员)可以定义如何处理异常.他们可以维护和修改控制异常处理的规则集,而无需更改块的应用程序代码. 它提供了常用的异常处理功能,例如记录异常信息的功…
原文:黄聪:Microsoft Enterprise Library 5.0 系列教程(五) Data Access Application Block 企业库数据库访问模块通过抽象工厂模式,允许用户通过简单的配置选择不同的数据库作为程序的数据源,大大解决了切换数据库时带来的麻烦.因为我本机只安装了SQL Server 2005,所以在此只做SQL的演示,需要深究的朋友可以访问以下网站: http://msdn.microsoft.com/en-us/library/ff664408%28v=P…
原文:黄聪:Microsoft Enterprise Library 5.0 系列教程(九) Policy Injection Application Block 代理对象(Proxy Object)会通过Handler链定位到真实对象(Real Object),而Policy则被注入到代理对象和真实对象中.整个流程如图: 我个人对Policy Injection Application Block使用的看法是: 用户先创建一个代理,用这个代理间接操作实体,在调用实体的方法或者成员属性时可以透明…
原文:黄聪:Microsoft Enterprise Library 5.0 系列教程(八) Unity Dependency Injection and Interception 依赖注入容器Unity: Unity的构造类似于Castle中的IOC(控制反转 或者叫依赖注入)容器,我们使用抽象接口来隔离使用者和具体实现之间的依赖关系,但是不管再怎么抽象,最终还是要创建具体实现类的实例,这种创建具体实现类的实例对象就会造成对于具体实现的依赖,为了消除这 种创建依赖性,需要把依赖移出到程序的外部…
1. Microsoft Enterprise Library 5.0 系列教程(一) Caching Application Block (初级) 2. Microsoft Enterprise Library 5.0 系列教程(一) Caching Application Block (高级) 3. Microsoft Enterprise Library 5.0 系列教程(二) Cryptography Application Block (初级) 4. Microsoft Enterpr…
一.简介及用途 在实际的项目开发中,我们总会需要对数据进行验证,以保证数据的可靠性,而为了使这些验证可以在不同的地方进行复用(如winform.web.WPF等),就需要将验证进行封装,EntLib的Validation模块就为我们解决了这个问题而产生的,其内置了多种常见的验证器,如字符串.日期.类型转换.正则表达式等,同时还提供了自定义验证的接口,方便我们根据实际的业务需求进行扩展. 同时,在Validation模块中还为我们加入了ASP.NET.WINFORM和WCF的验证器. 企业库提供了…
企业库日志应用程序模块工作原理图: 从上图我们可以看清楚企业库日志应用程序模块的工作原理,其中LogFilter,Trace Source,Trace Listener,Log Formatter的信息都可以在Category配置文件中反映出来,通过配置文件,调用LogWriter类的Writer方法,就可以将包含日志信息的LogEntry实体写入Category配置文件中指定的设备了. 企业库日记应用程序模块提供了下列几种记录方法: · The event log · An e-mail me…
在使用企业库的缓存时遇到一个问题. 创建 cachingConfiguration 的配置节处理程序时出错: 未能加载文件或程序集“Microsoft.Practices.EnterpriseLibrary.Caching, Version=5.0.414.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35”或它的某一个依赖项.找到的程序集清单定义与程序集引用不匹配. (异常来自 HRESULT:0x80131040) 原因就是通过安装程序得到…
微软企业库4.1学习笔记 http://blog.csdn.net/anyqu/article/category/1228691/3 黄聪:Enterprise Library 5.0 系列教程 www.cnblogs.com/huangcong/archive/2010/06/08/1753988.html 微软企业库5.0学习笔记(三十四)数据访问模块 各种获取数据的方式 http://blog.csdn.net/anyqu/article/details/7937389…
http://entlib.codeplex.com/ 微软企业库 现在已经到到6版本了 2013年更新的. https://www.microsoft.com/en-us/download/confirmation.aspx?id=6932 Hands-On Labs for Microsoft Enterprise Library 5.0 学习示例 http://www.cnblogs.com/huangcong/category/248455.html 博客园学习文章…
这篇文章是我在patterns & practices看到的一篇有关EntLib5.0的文章,主要介绍了EntLib5.0的这次的架构变化由来,觉得很不错,大家可以看一下! 在过去几年中,依赖关系注入 (DI) 模式在 .NET 开发人员社区一直受到关注.长时间以来,优秀的博客作者们讨论着 DI 的优点.MSDN 杂志 针对这一主题发表了多篇文章..NET 4.0 将发布某种类似 DI 的功能,并计划以后将其发展为完整的 DI 系统. 阅读有关 DI 的博客文章时,我注意到,这一主题有一个很小却…
请务必先看上一篇文章,本文在上一篇文章的代码基础上修改而成. JXLS 2.4.0系列教程(一)--最简单的模板导出 上一篇文章我们介绍了JXLS和模板导出最简单的应用,现在我们要更进一步,介绍在模板中循环导出链表中的数据,在日常开发中,循环导出应该才是最常用的功能吧! 首先,我们要建立一个类模拟javabean对象.我们定义一个person类,里面有id,name和age. public class Person { String id; String name; Integer age; p…
Android Studio系列教程二--基本设置与运行 2014 年 11 月 28 日 DevTools 本文为个人原创,欢迎转载,但请务必在明显位置注明出处! 上面一篇博客,介绍了Studio的优点与1.0 RC的安装与上手体验,没想到google的更新速度这么快,已经出了RC 2版本,主要是修复一些bug.那么今天就带大家预览下Stduio的界面与基本功能. 项目结构 当我们新建一个项目的目录结构默认是这样的 可以看到和Eclipse的目录结构有很大区别,Studio一个窗口只能有一个项…
原文:WPF系列教程--(二)使用Prism实现MVVM设计模式 - 简书 本文假设你已经知道MVVM设计模式是什么,所以直接进入正题,今天我们就用Prism来实现WPF的MVVM设计模式,百度上关于Prism的教程少之又少,仅有的几个教程也是使用的很古老的版本,反正也是看不懂写的啥玩意,下面以最简洁明了的代码来演示事件绑定和数据绑定. 1. 准备 使用上一节的Demo,来继续完成本节教程WPF系列教程--(一)仿TIM QQ界面 Prism Prism是一个MVVM框架,它包括,依赖注入(通过…
本系列目录 CRL快速开发框架系列教程一(Code First数据表不需再关心) CRL快速开发框架系列教程二(基于Lambda表达式查询) CRL快速开发框架系列教程三(更新数据) CRL快速开发框架系列教程四(删除数据) CRL快速开发框架系列教程五(使用缓存) CRL快速开发框架系列教程六(分布式缓存解决方案) CRL快速开发框架系列教程七(使用事务) CRL快速开发框架系列教程八(使用CRL.Package) CRL快速开发框架系列教程九(导入/导出数据) CRL快速开发框架系列教程十(…
接下来我们创建一个Label,NGUI->Open the Widget Wizard,打开widgetTool对话框,在Template中选择Label,确定AddTo右侧选项为panel,点击,Add To完成Label创建. 1.Label属性窗口如图 1.下面的节奏可能有点快,大家可以先熟悉一下上面讲的流程,再进行下面的学习.接下来我们依次创建Button和Input,因为这两个选项差不多,我们放一块讲,在WidgetTool窗口中,他们都需要选择一个Background,这里和选择Sp…
Fastify 系列教程: Fastify 系列教程一 (路由和日志) Fastify 系列教程二 (中间件.钩子函数和装饰器) 中间件 Fastify 提供了与 Express 和 Restify 中间件兼容的异步中间件引擎. 所以,Fastify 可以使用 Express 中间件. 注意:Fastify 中没有错误处理中间件(err, req, res, next).如果需要处理中间件中的错误时,只需要调用 next(new Error('error message')) 即可,Fastif…
今天介绍webpack怎么编译ES6的各种函数和语法.敲黑板:这是webpack4版本哦, 有一些不同于webpack3的地方. >>> 本节课源码 >>> 所有课程源码 1. 了解babel 说起编译es6,就必须提一下babel和相关的技术生态: babel-loader: 负责 es6 语法转化 babel-preset-env: 包含 es6.7 等版本的语法转化规则 babel-polyfill: es6 内置方法和函数转化垫片 babel-plugin-tr…
Fastify 系列教程: Fastify 系列教程一 (路由和日志) Fastify 系列教程二 (中间件.钩子函数和装饰器) Fastify 系列教程三 (验证.序列化和生命周期) Fastify 系列教程四 (请求对象.响应对象和插件) 中间件 Fastify 提供了与 Express 和 Restify 中间件兼容的异步中间件引擎. 所以,Fastify 可以使用 Express 中间件. 注意:Fastify 中没有错误处理中间件(err, req, res, next).如果需要处理…