1.6 [Enterprise Libary ] 使用不同的程序集

原创 2007年09月17日 15:51:00

版权所有(c) 2007  Dorian Deng。署名 共享 非商用。
转载请注明出处:http://blog.csdn.net/doriandeng/archive/2007/09/17/1788318.aspx

默认情况下,配置工具使用与 Enterprise Library 一起提供的程序集。可以重定向工具以使用其他的程序集,例如,修改源码而编译的程序集。如果使用的是独立的配置控制台,简单的放置工具的一个副本到正确的 bin 目录中即可。

如果有自己的 Enterprise Library 版本的程序集,必须修改注册表键。这是一个默认程序集设置,它引用了签名的二进制,并且用于安装的源码的另一程序集集合实体也被创建在注册表中。配置编辑器允许选择默认使用的程序集,也可以为特定的解决方案选择非默认的集合,这信息被保存在了 .sln 文件中。

默认的,用配置编辑器打开的每个 .config 文件都使用默认的程序集集合。如果要为特定的解决方案覆盖它,可以使用解决方案根元素的SelectedEnterpriseLibraryConfigurationSet 属性来选择一个替代的配置集合,集合与解决方案中的所有 .config 文件关联。注册表的设置决定了此属性的可能选项。

为了添加、修改或者移除程序集集合的定义,需要改变注册表的键。默认有二个程序集集合:“Microsoft 签名”的集合,它指向强命名的二进制;以及“EntLib3Src”集合,它指向最近安装的源码副本下的 bin 目录。

要修改注册表键,打开注册表编辑器(regedit.exe),然后导航到HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/VisualStudio/8.0/Packages/{488366a4-630c-4a0e-a6a2-b019cee13bea}/ConfigurationEditor(计算机范围的设置)或者HKCU/Software/Microsoft/Practices/EnterpriseLibrary/ConfigurationEditor (每个用户设置)。每个程序集集合被定义在此根键下的一个键中。程序集集合如下:

ConfigurationUIAssemblyPath

指向一个包含实现Microsoft.Practices.EnterpriseLibrary.Configuration.Design.HostAdapter.ISingleHierarchyConfigurationUIHostAdapater的类的程序集。如果使用了未修改的 Enterprise Library 程序集,这个值将指向Microsoft.Practices.EnterpriseLibrary.Configuration.Design.UI.dll的一个副本。

ConfigurationUIAdapterClass

它指向一个类的全名称(带有命名空间的),这个类实现了Microsoft.Practices.EnterpriseLibrary.Configuration.Design.HostAdapter.ISingleHierarchyConfigurationUIHostAdapter如果使用的是未修改的 Enterprise Library 程序集,这个值将引用到类Microsoft.Practices.EnterpriseLibrary.Configuration.Design.UI.SingleHierarchyConfigurationUIHostAdapter

ConfigurationUIPluginDirectory

它指向包含设计时和运行时程序集的目录,这些程序集将被为此程序集集合而加载到配置工具中。

要指定程序集集合为默认集合,可以修改根键下的defaultConfigurationSet 的值。

注意

当 Enterprise Library 源码在同一机器上被安装在多个位置时,在已存在的程序集集合中的键将被新安装的路径所覆写。例如,初始安装到 C:/EntLibSrc01 的程序集键将被后来安装到 C:/EntLibSrc02 的那些所覆写。

C#中的程序集和反射

¨什么是程序集? .net中的dll与exe文件都是程序集。(exe与dll的区别?) 程序集是.net中的概念。 程序集(Assembly),可以看做是一堆相关类打一个包,相当于java中的j...
  • u011955860
  • u011955860
  • 2014年04月04日 11:33
  • 974

深入理解程序集签名(强命名)

从开始做SharePoint开始到现在一直都是给程序强命名, 然后放到GAC修改web.config...也没有时间去深入的理解为什么要这样做, 前几天看到一本书中有讲到;     签名(也称为强命名...
  • Michael193
  • Michael193
  • 2010年02月02日 21:53
  • 2781

C#学习笔记1——程序集

一、程序集概念、特性程序集构成了基于 .NET 的应用程序的部署、版本控制、重用、激活范围和安全权限的基本单元。程序集以可执行 (.exe) 文件或动态链接库 (.dll) 文件的形式出现,是 .NE...
  • byxdaz
  • byxdaz
  • 2011年08月29日 21:38
  • 5796

在执行一个 CLR 例程或 SQL Server 2005 中使用程序集时的错误消息:"在主机存储区中的组件在 GAC 中有一个不同的签名比程序集。

请考虑以下方案。 方案 1 假定 MyDateTime 数据类型在 $ 存储中所占 9 个字节。 在 SQL Server 管理 Studio,创建一个新表,通过运行下面的语句中包含一列 VA...
  • mounting
  • mounting
  • 2010年09月08日 19:06
  • 670

Unity运行时使用的程序集和Editor下不同

Unity运行时使用的程序集和Editor下是不一样的。同样的一行代码在MonoBehaviour下输出的结果和通过Editor的输出是不一样的。     点击“Play”按钮,Unity运行期...
  • u010153703
  • u010153703
  • 2016年08月06日 15:27
  • 1909

Xmange5 安装时出现“安装程序集组件时出错”决方法

我的电脑以前是win8系统,后来因为种种原因多次重装系统变为win10,在安装Xmanger5时总是在最后一步时出现错误,点击确定还会回滚并且出现1603错误,在网上找到一个方法可以解决这个问题。在查...
  • JOJOxiaocai
  • JOJOxiaocai
  • 2018年01月11日 17:32
  • 195

扩展Enterprise Libary 中DataAceess Block 

扩展Enterprise Libary 中DataAceess Block 以支持Access数据库  以下是两个主类AccessDatabase:using System;using System....
  • ycl111
  • ycl111
  • 2005年08月22日 13:48
  • 1059

程序集引用版本冲突问题的解决办法:合并依赖项

最近在 做 MailChimp 与网站功能 集成时,发现 MailChimp 2API 中的 MailChimp.dll  中的依赖项 SerivceStack.Text.dll (版本为3.9.71...
  • lilong_herry
  • lilong_herry
  • 2015年01月23日 19:35
  • 2843

GitHub Enterprise远程代码执行解读

GitHub Enterprise和GitHub的服务类似,不过它为大型企业的开发团队量身定制。 根据Github官方博客:GitHub Enterprise包括了Github之前的所有主要功能...
  • zzkk_
  • zzkk_
  • 2017年08月16日 11:35
  • 147

cocostudio1.6制作动画的在使用中的内存优化

在最近制作的一款手游中使用到了cocostudio1.6动画编辑器制作的多个动画,然后在将这多个动画加入内存后发现内存飙涨。 网络搜索优化方案苦求不得。最后在技术群中提问 幸得大神解答。试之,十分有...
  • ST_DarkMoon
  • ST_DarkMoon
  • 2016年11月10日 16:10
  • 499
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:1.6 [Enterprise Libary ] 使用不同的程序集
举报原因:
原因补充:

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