使用nHib 3.2,我有兴趣缓存我所有实体的属性,除了我想用每个Get
计算的公式属性。
这可能吗?
这是我的映射:
public TransactionNHibernateMapping()
{
Table("TransactionInfo");
Id(transaction => transaction.TransactionId, m => m.Generator(Generators.GuidComb));
Cache(c =>
{
c.Include(CacheInclude.All);
c.Usage(CacheUsage.ReadWrite);
});
Property(transaction => transaction.HighestSeverity, m => m.Formula("(Select max(LogEntryInfo.Severity) from LogEntryInfo where LogEntryInfo.TransactionId = TransactionId)"));
}
现在,虽然启用了二级缓存,但始终会从数据库重新加载此实体
如果我删除HighestSeverity
属性映射,则缓存按预期工作。
我尝试使用公式字段的Generated
选项,但这似乎没有帮助。
还有其他想法吗?