NHibernate Fluent Sqlite强制使用“插入或替换”

时间:2012-12-13 14:08:28

标签: c# sqlite nhibernate

我需要强制NHibernate不使用典型的INSERT语句,而是使用sqlite的INSERT OR REPLACE语句

我知道有可能在ClassMap<>中我会使用SqlInsert("INSERT OR REPLACE..."),但我有超过100个实体,我不会为每个映射类添加它。

有谁知道如何以另一种简单的方式做到这一点?

1 个答案:

答案 0 :(得分:0)

INSERT OR REPLACE需要列唯一的信息,并决定是否应使用插入或替换。在NHibernate中没有内置机制,因为它太特殊了。最简单的方法是在保存或处理Duplicate键Exception之前进行查询(ISqlExceptionConverter在这里有帮助)