希望在明天

如果,你没有耐心等待成功的到来,那么,你将用一生的耐心去面对失败。

企业库自定义config文件

 大家都知道如何将企业库的配置信息写在Web.Config和App.Config,下面介绍如何将配置信息独立管理,并可以任意命名和任意放置这个config文件。

一般情况我们在config文件中这样写:

<configuration>
  
<configSections>
    
<section name="dataConfiguration" type="Microsoft.Practices.EnterpriseLibrary. Data.Configuration.DatabaseSettings, Microsoft.Practices.EnterpriseLibrary.Data" />
  
</configSections>
  
<connectionStrings>
    
<add
        
name="Northwind" 
        providerName
="System.Data.SqlClient"
        connectionString
="Data Source=(local);Initial Catalog=Northwind;Integrated Security=True" />
  connectionStrings>
  
<dataConfiguration defaultDatabase="Northwind"/>
</configuration>

创建实例的代码:
Database northwind = DatabaseFactory.CreateDatabase();
Database northwind 
= DatabaseFactory.CreateDatabase("Northwind");

其实,也可以这样去实现:
还是上面的config内容,但可以任意命名这个config文件,并保存到其他路径下,创建数据库实例时这样写:
IConfigurationSource source =
    
new FileConfigurationSource("My.config");
    
DatabaseProviderFactory factory 
=
    
new DatabaseProviderFactory(source);
    
Database northwind 
= factory.Create("Northwind");

另外,我们还可以使用原来的代码块,基于一个自定义的config文件,去创建数据库实例。

App.config和web.config中要这样写

<configuration>
  
<configSections>
    
<section
    
name="enterpriseLibrary.ConfigurationSource"
    type
="Microsoft.Practices.EnterpriseLibrary.Common.Configuration.ConfigurationSourceSection,  Microsoft.Practices.EnterpriseLibrary.Common" />
  
</configSections>
<enterpriseLibrary.ConfigurationSource  selectedSource="fileSource">
   
<sources>
       
<add 
         
name="fileSource"
         type
="Microsoft.Practices.EnterpriseLibrary.Common.Configuration.FileConfigurationSource, Microsoft.Practices.EnterpriseLibrary.Common"
         filePath 
="My.config" />
       
<add 
         
name="systemSource"
         type
="Microsoft.Practices.EnterpriseLibrary.Common.Configuration.SystemConfigurationSource,  Microsoft.Practices.EnterpriseLibrary.Common" />
   
</sources>
</enterpriseLibrary.ConfigurationSource>
</configuration>

数据库连接配置仍然在My.config中,而代码中可以用原来的方法创建实例:
Database northwind =       DatabaseFactory.CreateDatabase();
Database northwind 
=       DatabaseFactory.CreateDatabase("Northwind");

posted on 2007-06-24 22:28  蒜头  阅读(831)  评论(0编辑  收藏  举报

导航