Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/305.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何让Nhibernate优雅地处理不存在的数据库列_C#_Nhibernate_Nhibernate Mapping - Fatal编程技术网

C# 如何让Nhibernate优雅地处理不存在的数据库列

C# 如何让Nhibernate优雅地处理不存在的数据库列,c#,nhibernate,nhibernate-mapping,C#,Nhibernate,Nhibernate Mapping,我正在从事一个需要使用多个数据库的项目,这些数据库大部分是完全相同的,但可能缺少一些列。您如何让NHibernate处理这个问题?例如,我有一个表,其中有4列、一个索引和2个数据列,这些列始终可用,但单个客户不希望该列出现在他们的数据库中 因为这是遗留应用程序迁移的一部分,所以我没有权力决定数据库格式,甚至更改数据库。任何人都知道怎么做。我也不能让NHibernate碎片处理这个 韩元 Nicky我不知道如何告诉NHibernate忽略以其他方式映射的列 我将考虑为不同的数据库创建多个映射文件,

我正在从事一个需要使用多个数据库的项目,这些数据库大部分是完全相同的,但可能缺少一些列。您如何让NHibernate处理这个问题?例如,我有一个表,其中有4列、一个索引和2个数据列,这些列始终可用,但单个客户不希望该列出现在他们的数据库中

因为这是遗留应用程序迁移的一部分,所以我没有权力决定数据库格式,甚至更改数据库。任何人都知道怎么做。我也不能让NHibernate碎片处理这个

韩元
Nicky

我不知道如何告诉NHibernate忽略以其他方式映射的列

我将考虑为不同的数据库创建多个映射文件,然后根据您的环境使用正确的映射文件配置SessionFactory


这看起来可能需要更多的初始设置工作,但很明显,在数据库X中有a-B-C列,在数据库Y中只有a-B列。

问题是,我们目前正在使用大约50个数据库的samme映射来分割不同的公司数据(法律要求)因此,为每个数据库进行映射是可行的,但在这种情况下是不可维护的。