我需要强制NHibernate不使用典型的INSERT
语句,而是使用sqlite的INSERT OR REPLACE
语句
我知道有可能在ClassMap<>
中我会使用SqlInsert("INSERT OR REPLACE...")
,但我有超过100个实体,我不会为每个映射类添加它。
有谁知道如何以另一种简单的方式做到这一点?
答案 0 :(得分:0)
INSERT OR REPLACE需要列唯一的信息,并决定是否应使用插入或替换。在NHibernate中没有内置机制,因为它太特殊了。最简单的方法是在保存或处理Duplicate键Exception之前进行查询(ISqlExceptionConverter在这里有帮助)