2.7 用于 Enterprise Library 内核的源模式

原创 2007年09月27日 00:05:00
版权所有(c) 2007  Dorian Deng。署名 共享 非商用。
转载请注明出处:http://blog.csdn.net/doriandeng/archive/2007/09/27/1802321.aspx

Enterprise Library 内核提供服务,例如度量和配置,以及所有 Enterprise Library 应用程序块所依赖的内核。内核功能包含在程序集 Microsoft.Practices.EnterpriseLibrary.Common.dll 中。

 

有二个配置节与 Enterprise Library 内核关联。他们是 instrumentationConfiguration enterpriseLibrary.ConfigurationSource 节。这些节定义了哪种度量节在应用程序中可用,以及哪个数据源将被用于访问应用程序中的配置信息。下列 XML 代码展示了配置节定义,它定义了那些配置节的位置。这些定义将被定义在应用程序配置文件的 <configSections> 节中。

例 2.15. XML

<configSections>  <section name="instrumentationConfiguration" type="Microsoft.Practices.EnterpriseLibrary.Common.Instrumentation.Configuration.InstrumentationConfigurationSection, Microsoft.Practices.EnterpriseLibrary.Common, Version=3.1.0.0, Culture=neutral, PublicKeyToken=null" />  <section name="enterpriseLibrary.ConfigurationSource" type="Microsoft.Practices.EnterpriseLibrary.Common.Configuration.ConfigurationSourceSection, Microsoft.Practices.EnterpriseLibrary.Common, Version=3.1.0.0, Culture=neutral, PublicKeyToken=null" /> </configSections>

如果在配置文件中没有 enterpriseLibrary.ConfigurationSource 节,一个 SystemConfigurationSource 类的实例将成为应用程序的配置源。这意味着当应用程序使用静态工厂时,它从应用程序的配置文件中获取配置信息。

enterpriseLibrary.ConfigurationSource 元素

enterpriseLibrary.ConfigurationSource 元素指定了应用程序将使用的配置源。这个元素不是必须的,如果省略,应用程序将使用 SystemConfigurationSource 类的实例。

下列章节描述了enterpriseLibrary.ConfigurationSource 元素的属性和子元素。

属性

下表列出了enterpriseLibrary.ConfigurationSource 元素的属性

表 2.2. enterpriseLibrary.ConfigurationSource 属性

属性 描述
selectedSource 用于此应用程序的配置源,它必须是列出在 <sources>节中的名称。此属性是必须的。

sources 元素

sources 元素是 enterpriseLibrary.ConfigurationSource元素的子元素,它列出了应用程序可以使用的配置源。此元素是必须的。

add 元素

add 元素是 sources 元素的子元素。它添加配置源的名称。此元素不是必须的,可以有多个 add 元素。下表列出了 add 元素的属性。

表 2.3. add 元素的属性

属性 描述
name 配置源的名称。在节中,名称必须是唯一的。此属性是必须的。
type 实现 IConfigurationSource 接口的类的类型名称。
filePath 指向配置文件路径。如果配置源是一个文件的话,此属性是必须的。
connectionstring 用于保存配置信息的 SQL Server 数据库的 SQL Server 连接字符串。
getStoredProcedure 拥有配置信息的数据库中的一个存储过程的名称。这是当应用程序获取配置节时要调用的存储过程。如果应用程序使用一个 SQL Server 数据库的存储过程来获取配置信息的话,此属性才是必须的。
setStoredProcedure 拥有配置信息的数据库中的一个存储过程的名称。这是当应用程序设置配置节时要调用的存储过程。如果应用程序使用一个 SQL Server 数据库的存储过程来设置配置信息的话,此属性才是必须的。
refreshStoredProcedure 拥有配置信息的数据库中的一个存储过程的名称。这是当应用程序刷新配置节时要调用的存储过程。如果应用程序使用一个 SQL Server 数据库的存储过程来刷新配置信息的话,此属性才是必须的。
removeStoredProcedure 拥有配置信息的数据库中的一个存储过程的名称。这是当应用程序移除配置节时要调用的存储过程。如果应用程序使用一个 SQL Server 数据库的存储过程来移除配置信息的话,此属性才是必须的。

instrumentationConfiguration 子元素

instrumentationConfiguration 元素使不同的度量类型可用或不可用。此元素不是必须的。如果此元素不包含在配置源中,则所有度量是不可用的。下表列出了 instrumentationConfiguration 元素的属性。

表 2.4. instrumentationConfiguration 属性

属性 描述
performanceCountersEnabled 指定被应用程序使用的应用程序块是否将被写到性能计数器中。可能值是 truefalse ,默认值是 false 。此属性不是必须的。
eventLoggingEnabled 指定被应用程序使用的应用程序块是否将被写到事件日志中。可能值是 truefalse,默认值是 false。此属性不是必须的。
wmiEnabled 指定被应用程序使用的应用程序块是否将被写到Windows 管理度量(WMI)中。可能值是 truefalse,默认值是 false。此属性不是必须的。

linux内核中的设计模式

创建型     Object Pool   Object Pool模式可以提升性能,尤其是在对象的分配、初始化成本高,使用频率高 但使用时间短的情况下。对象池可以设置对象池的大小和回收时间...
  • yusiguyuan
  • yusiguyuan
  • 2013年12月20日 22:30
  • 1612

C#利用微软企业库Enterprise Library操作mysql数据库

在C#项目中,很多时候到要用到Enterprise Library。这里只是用一个很简单的小例子来演示一下Enterprise Library在VS2010中操作mysql数据库的流程。 1,利用E...
  • ZHM977863924
  • ZHM977863924
  • 2015年02月05日 16:48
  • 2816

Windows安装Python图像处理库:PIL模块

平常一般都在Linux下用Python,今天女票突然说让帮忙把一些图片全部弄成一个分辨率的,作为程序员,这种重复的工作还是交给计算机吧。 废话不多说,打开Cmd看下Windows的python下面...
  • boycycyzero
  • boycycyzero
  • 2015年01月12日 20:54
  • 15619

通过fsharp 使用Enterprise Library Unity 3 - 三种拦截模式的探索

这篇就Enterprise Library Unity Interceptor 三种拦截模式进行一下探索。
  • samwell
  • samwell
  • 2014年10月30日 10:37
  • 962

依赖注入性能测试(spring.net 和Enterprise Library)

分类: 架构设计 .net开发 2009-11-07 16:25 503人阅读 评论(1) 收藏 举报   想在项目中大量使用依赖注入,故对其性能做了一个测试。   测试使用sprin...
  • educast
  • educast
  • 2012年07月19日 10:38
  • 1624

csharp: 用Enterprise Library对象实体绑定数据

Enterprise Library: https://msdn.microsoft.com/en-us/library/ff648951.aspx /// /// 是否存在该记录...
  • geovindu
  • geovindu
  • 2015年07月26日 02:55
  • 317

通过fsharp 使用Enterprise Library Unity 2

记录日志是最常见的行为注入。这里最重要的是实现IIntercptionBehavior接口中的Invoke方法...
  • samwell
  • samwell
  • 2014年10月29日 12:56
  • 777

Microsoft Enterprise Library 5.0 系列(七) Exception Handling Application Block

使用企业库异常处理应用程序模块的优势: 它支持整个应用程序体系结构层的异常处理,而不仅限于服务接口的界限。 它使得异常处理策略可以在管理层定义和维护,以便决策人员(可能是系统管理员和开发人员)可...
  • anyqu
  • anyqu
  • 2012年09月11日 13:50
  • 1427

VS2010+Enterprise LIbrary 5.0 连接sqlserver

1.下载安装Enterprise LIbrary 5.0;      下载地址:http://www.microsoft.com/en-us/download/details.aspx?id=15...
  • luotuocihb
  • luotuocihb
  • 2013年07月11日 01:15
  • 970

Microsoft Enterprise Library 5.0 系列(五)

企业库数据库访问模块的几大功能: 1.        最简单的功能,通过ExecuteNonQuery.方法执行SQL语句. 2.        执行ExecuteDataSet,返回DataSe...
  • bzyanwei
  • bzyanwei
  • 2011年11月21日 13:51
  • 455
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:2.7 用于 Enterprise Library 内核的源模式
举报原因:
原因补充:

(最多只允许输入30个字)