Fluently NHibernate有个好处就是可以在代码里定义实体类,而不必写冗长的XML。

但通常,一个项目对应的所有的实体类,都编译成一个DLL。如果有个项目,是在某个父项目的基础上再扩展,那么这个子项目,一方面有自己的实体类DLL,还有父项目的DLL,要如何映射?

网上寻寻觅觅,找不到啥资料,只有一个老外提到了类似的问题。也没其他人回答,他自己给出了答案。当然他那个可能是JAVA的,我是.NET派,但还是感谢得到了他的启发。英语文章,猛一看让人顿生怯意,但硬着头皮看下去,还是能看懂一些。要习惯看英文了,无论是装逼还是实际研究,都需要。

我是酱紫写的:

重复用了2个 .AddFromAssembly

        public static FluentConfiguration GetConfiguration(string connString)
{
return Fluently
.Configure()
.Database(FluentNHibernate.Cfg.Db.OracleClientConfiguration.Oracle10
.ConnectionString(connString)
.ShowSql())
.ExposeConfiguration(f => f.SetInterceptor(new 叉叉叉.Data.Infrastructure.ConnectionHelper.SqlStatementInterceptor()))
.Mappings(m => m.FluentMappings
.AddFromAssembly(Assembly.Load("子项目.Data"))
.AddFromAssembly(Assembly.Load("父项目.Data"))
.Conventions.AddFromAssemblyOf<叉叉叉.Data.Infrastructure.ConnectionHelper.EnumConvention>())
.Cache(c => c.UseQueryCache().UseSecondLevelCache().ProviderClass<RedisCacheProvider>());
}

Fluently NHibernate映射多个实体程序集的更多相关文章

  1. 在MVC架构中使用CodeSmith生成NHibernate映射对象和实体类

    第一步:找到生成模板,如下图 第二步:配置数据库连接(如下图),然后右击第一步找到的模板,点击Excute 第三步:执行操做(如下图) 第四步: 找到之前配置生成的文件夹,找到如下文件(图中标记的文件 ...

  2. Fluently NHibernate 插入CLOB字段

    ORA-01461: can bind a LONG value only for insert into a LONG column 插入oracle某表时报的错. 查来查去,是插入的某个字段值超长 ...

  3. NHibernate 映射基础(第三篇) 简单映射、联合主键

    NHibernate 映射基础(第三篇) 简单映射.联合主键 NHibernate完全靠配置文件获取其所需的一切信息,其中映射文件,是其获取数据库与C#程序关系的所有信息来源. 一.简单映射 下面先来 ...

  4. mysql + Fluently NHibernate + WebAPI + Autofac

    MySQL.Fluently NHibernate.WebAPI.Autofac,对我来说每一个都是麻烦疙瘩,现在它们为了一个共同的项目而凑合到一起了.一路磕磕碰碰,现在貌似有了一点眉目. 作为一个步 ...

  5. 咱就入个门之NHibernate映射文件配置(二)

    上一篇主要介绍了NHibernate映射文件的基础配置,这篇我们介绍下NHibernate的一对多及多对一配置(文中我直接使用双向关联,即一和多两端都配置,开发中可以只使用一端),同时略带介绍下NHi ...

  6. MyGeneration模板生成NHibernate映射文件和关系(one-to-one,one-to-many,many-to-many)

    MyGeneration的几个NHibernate模板功能已经很强,但还是存在些问题.例如:Guid主键支持不佳,代码不易修改,不支持中文注释等等.所以我决定自己来改写此模版.我把一部分通用的函数提取 ...

  7. 用MyGeneration模板生成NHibernate映射文件和关系

    用我的MyGeneration模板生成NHibernate映射文件和关系(one-to-one,one-to-many,many-to-many) MyGeneration的几个NHibernate模 ...

  8. 生成 hibernate 映射文件和实体类

    创建web工程,使用Hibernate的时候,在工程里一个一个创建实体类太麻烦,浪费时间,现在教大家如何用MyEclipse自动生成Hibernate映射文件及实体类 方法/步骤   创建数据库,创建 ...

  9. Nhibernate 映射关系,一对多 多对一与多对手在映射文件中的体现。

    今天做了第一个Nhibernate项目,摸着石头过河,学到了一些东西,在这里将自己总结体会到的一些映射关系写出来,与大家分享,由于是初学者,如果有不对的地方希望大家能够指出来. 首先要说明要建立的几张 ...

随机推荐

  1. docker快速搭建

    curl  -sSL https://get.docker.com|sh docker --version systemctl start docker.service ps -ef|grep doc ...

  2. vue ui组件muse-ui的使用

    安装 npm install muse-ui typeface-roboto material-design-icons vuex axios --save Muse UI 是一套 Material ...

  3. 嵩天老师的零基础Python笔记:https://www.bilibili.com/video/av15123607/?from=search&seid=10211084839195730432#page=25 中的42-45讲 {字典}

    #coding=gbk#嵩天老师的零基础Python笔记:https://www.bilibili.com/video/av15123607/?from=search&seid=1021108 ...

  4. 关于最新版本react-native0.59.x构建的问题解决方案

    react-native的版本更新是真的快,几乎几天就是一个小版本,然而在这个过程中,对于新手来说,成功构建一个,并跑起来的项目,还是有一定难度的,各种问题,一不小心,你就会发现你的时间全部都浪费在了 ...

  5. AutoItLibrary之键盘操作(send)

    最近有人问到我键盘操作用什么库?用到库里面的哪个方法?我在这里总结一下,第一次写,有片面的地方还请指出,一块进步.1.首先,用到的库是AutoItLibrary,用到的方法是send:按F5可用看到 ...

  6. java数据结构简单点

    java常用的数据结构一 集合框架主要就是Collection和Map: 1.Collection包含了List和Set两大分支. (1)List是一个有序的集合,每一个元素都有它的索引.第一个元素的 ...

  7. [Poi2011]Meteors 题解

    题目大意: 给定一个环,每个节点有一个所属国家,k次事件,每次对[l,r]区间上的每个点点权加上一个值,求每个国家最早多少次操作之后所有点的点权和能达到一个值. 思路: 整体二分(二分答案),对于每个 ...

  8. [POJ1984]Navigation Nightmare

    [POJ1984]Navigation Nightmare 试题描述 Farmer John's pastoral neighborhood has N farms (2 <= N <= ...

  9. LibreOJ2302 - 「NOI2017」整数

    Portal Description 有一个整数\(x=0\),对其进行\(n(n\leq10^6)\)次操作: 给出\(a(|a|\leq10^9),b(b\leq30n)\),将\(x\)加上\( ...

  10. 【组合数模板】HDU 6114 Chess

    http://acm.hdu.edu.cn/showproblem.php?pid=6114 [思路] 就是求C(m,n) [板] #include<iostream> #include& ...