随笔 - 292  文章 - 38  评论 - 3616  阅读 - 190万

Castle学习笔记----Castle.AvtiveRecord配置

一.安装程序
  castleproject-1.0-rc2.msi(下载安装就好!).
二.修改Web.Config的配置

Web.Config里需在节点<configSections>下添加配置

<section name="activerecord"

         type="Castle.ActiveRecord.Framework.Config.ActiveRecordSectionHandler, Castle.ActiveRecord" />

上面添加了<section>节点activerecord,接着配置activerecord的具体属性值

<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>
三.读取配置信息及根据映射关系自动创建数据表格

在web项目里添加一个全局服务程序Global.asax,在应用程序开始出配置

首先引入命名空间
<%@ Application Language="C#" %>
<%@ Import Namespace="Castle.ActiveRecord.Framework" %>
<%@ Import Namespace="Castle.ActiveRecord" %>

void Application_Start(object sender, EventArgs e)
{
    // 在应用程序启动时运行的代码
    IConfigurationSource source = ConfigurationManager.GetSection("activerecord") as IConfigurationSource;
    ActiveRecordStarter.Initialize(source,typeof(ZDS.Test.Model.Users));

   //上面Initialize()方法里可以利用反射机制跟踪程序集,本示例直接跟的Users类
   //ActiveRecordStarter.Initialize(source,typeof(ZDS.Test.Model.Users));这里还可以跟踪整个程序集合
   //(通过反射跟踪一个程序集<先引入命名空间System.Reflection>或者就跟全引用)代码如下:
   //ActiveRecordStarter.Initialize(System.Reflection.Assembly.load("ZDS.DaiTao.Test.Model",source);  

   ActiveRecordStarter.CreateSchema();
  //上面这句作用不大,但很重要,只需要在实体层类里把关系建立好,通过这句代码就可以直接建立数据库表格,你只需要
    建立一个数据库就OK,表格会自动建立(以类作为表名,所映射作为字段名...)

}

大体上就这样了.

posted on   Bēniaǒ  阅读(1005)  评论(1编辑  收藏  举报
编辑推荐:
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
阅读排行:
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· .NET周刊【3月第1期 2025-03-02】
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· [AI/GPT/综述] AI Agent的设计模式综述

点击右上角即可分享
微信分享提示