step by step castle ActiveRecord示例项目详读之配置信息和初始化
2008-11-16 00:59
597 查看
在学习castle过程中发现安装了1.0 Release Candidate 3版本的castle,系统自带了一个ActiveRecord-Samples例子,决定好好研究下:
从 App.cs 开始
关于初始化:
初始化语句:
XmlConfigurationSource source = new XmlConfigurationSource("../appconfig.xml");
ActiveRecordStarter.Initialize( source, typeof(Blog), typeof(Post), typeof(User) );
这时就产生了两个疑问:
1. 在ActiveRecordStarter.Initialize()我有多少个实例我都要typeof()吗?有没有其他办法?
2.这个是Form程序我可以将初始化语句写在main函数的开头,如果是web程序我将初始化写在哪里?
答案:
1.你可以把实体类的程序集都一起初始化了
例子:ActiveRecordStarter.Initialize(Assembly.Load("BlogSample"), source)
(注意:在程序前using System.Reflection; )
2.如果是web程序初始化你可以把它放在Global.asax的Application_ Start方法里面。(注意在前面添加
<%@ Import Namespace="System.Collections" %>
<%@ Import Namespace="Castle.ActiveRecord" %>
<%@ Import Namespace="Castle.ActiveRecord.Framework" %>,三个引用)
从 App.cs 开始
MS SQLServer <activerecord> <config> <add key="hibernate.connection.driver_class" value="NHibernate.Driver.SqlClientDriver" /> <add key="hibernate.dialect" value="NHibernate.Dialect.MsSql2000Dialect" /> <add key="hibernate.connection.provider" value="NHibernate.Connection.DriverConnectionProvider" /> <add key="hibernate.connection.connection_string" value="Data Source=.;Initial Catalog=test;Integrated Security=SSPI" /> </config> </activerecord> Oracle <activerecord> <config> <add key="hibernate.connection.driver_class" value="NHibernate.Driver.OracleClientDriver" /> <add key="hibernate.dialect" value="NHibernate.Dialect.OracleDialect" /> <add key="hibernate.connection.provider" value="NHibernate.Connection.DriverConnectionProvider" /> <add key="hibernate.connection.connection_string" value="Data Source=dm;User ID=dm;Password=dm;" /> </config> </activerecord> MySQL <activerecord> <config> <add key="hibernate.connection.driver_class" value="NHibernate.Driver.MySqlDataDriver" /> <add key="hibernate.dialect" value="NHibernate.Dialect.MySQLDialect" /> <add key="hibernate.connection.provider" value="NHibernate.Connection.DriverConnectionProvider" /> <add key="hibernate.connection.connection_string" value="Database=test;Data Source=someip;User Id=blah;Password=blah" /> </config> </activerecord> Firebird <activerecord> <config> <add key="hibernate.connection.driver_class" value="NHibernate.Driver.FirebirdDriver" /> <add key="hibernate.dialect" value="NHibernate.Dialect.FirebirdDialect" /> <add key="hibernate.connection.provider" value="NHibernate.Connection.DriverConnectionProvider" /> <add key="hibernate.connection.connection_string" value="Server=localhost;Database=d:\db.fdb;User=SYSDBA;password=masterkey;ServerType=1;Pooling=false" /> <add key="hibernate.query.substitutions" value="true 1, false 0" /> </config> </activerecord> PostgreSQL <activerecord> <config> <add key="hibernate.connection.driver_class" value="NHibernate.Driver.NpgsqlDriver" /> <add key="hibernate.dialect" value="NHibernate.Dialect.PostgreSQLDialect" /> <add key="hibernate.connection.provider" value="NHibernate.Connection.DriverConnectionProvider" /> <add key="hibernate.connection.connection_string" value="Server=localhost;initial catalog=nhibernate;User ID=nhibernate;Password=nhibernate;" /> </config> </activerecord> Access (Jet) Connectivity to an Microsoft Access database via Jet requires a reference to NHibernate.JetDriver. <activerecord> <config> <add key="hibernate.connection.driver_class" value="NHibernate.JetDriver.JetDriver, NHibernate.JetDriver" /> <add key="hibernate.dialect" value="NHibernate.JetDriver.JetDialect, NHibernate.JetDriver" /> <add key="hibernate.connection.provider" value="NHibernate.Connection.DriverConnectionProvider" /> <add key="hibernate.connection.connection_string" value="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=nhibernate.mdb" /> </config> </activerecord>
关于初始化:
初始化语句:
XmlConfigurationSource source = new XmlConfigurationSource("../appconfig.xml");
ActiveRecordStarter.Initialize( source, typeof(Blog), typeof(Post), typeof(User) );
这时就产生了两个疑问:
1. 在ActiveRecordStarter.Initialize()我有多少个实例我都要typeof()吗?有没有其他办法?
2.这个是Form程序我可以将初始化语句写在main函数的开头,如果是web程序我将初始化写在哪里?
答案:
1.你可以把实体类的程序集都一起初始化了
例子:ActiveRecordStarter.Initialize(Assembly.Load("BlogSample"), source)
(注意:在程序前using System.Reflection; )
2.如果是web程序初始化你可以把它放在Global.asax的Application_ Start方法里面。(注意在前面添加
<%@ Import Namespace="System.Collections" %>
<%@ Import Namespace="Castle.ActiveRecord" %>
<%@ Import Namespace="Castle.ActiveRecord.Framework" %>,三个引用)
相关文章推荐
- Castle ActiveRecord学习实践(2):构建配置信息
- Castle ActiveRecord学习实践(2):构建配置信息
- C#.Net Castle ActiveRecord学习实践(2):构建配置信息
- Castle ActiveRecord学习实践(2):构建配置信息
- Castle.ActiveRecord的初始化配置补充及配置封装的解决方案
- Step by Step 搭建SpringMVC项目[3]-配置SpringMVC环境
- Castle ActiveRecord Generator 使用示例
- Castle.ActiveRecord的ProxyFactory配置
- Castle Active Record for .NET2.0快速入门示例
- Castle Active Record for .NET2.0快速入门示例
- Castle Active Record for .NET2.0快速入门示例
- servlet都有一个servletConfig对象;四个config对象可以调用的方法;ServletContext对象之获取web项目信息;设置全局初始化参数的配置
- 记录Castle ActiveRecord访问Sqlite的配置
- Castle Active Record for .NET2.0快速入门示例
- C#.Net Castle Active Record for .NET2.0快速入门示例
- Castle ActiveRecord 使用动态填写参数方式配置数据库连接
- Castle.ActiveRecord 多数据库的配置(自家用)
- Castle Active Record for .NET2.0快速入门示例
- Castle Active Record for .NET2.0快速入门示例
- Castle Active Record for .NET2.0快速入门示例