如果我有一个ResultColumn
设置了属性的 POCO 类,然后当我进行Single<Entity>()
调用时,我的结果列不会被映射。我已将我的列设置为结果列,因为它的值应始终由 SQL 列的默认约束生成。我不希望从业务层注入或更新此列。我想说的是,我的列的类型是简单的 SQL 数据类型,而不是相关的实体类型(正如我所看到ResultColumn
的那样,主要用于这些类型)。
查看代码我可以在 PetaPoco 中看到这一行:
// Build column list for automatic select
QueryColumns = ( from c in Columns
where !c.Value.ResultColumn
select c.Key
).ToArray();
为什么从自动选择语句中排除结果列,因为据我了解,它们的性质是只读的。所以只用于选择。当列实际上是相关实体类型(复杂)时,我可以看到这种情况。行。但是我们应该有一个单独的属性ComputedColumnAttribute
,这样总是在选择中返回,但从不在插入或更新中使用......
为什么 PetaPoco 团队决定从选择中省略结果列呢?
那我应该如何阅读结果列?