是否可以使用 OrmLite 扩展方法UpdateOnly一次更新多个字段?
文档中给出的示例是:
db.UpdateOnly(new Person { FirstName = "JJ" }, p => p.FirstName);
我可以提供一个包含多个字段的表达式吗?如果是这样,鉴于字段可能是不同的数据类型,最好使用什么运算符。
是否可以使用 OrmLite 扩展方法UpdateOnly一次更新多个字段?
文档中给出的示例是:
db.UpdateOnly(new Person { FirstName = "JJ" }, p => p.FirstName);
我可以提供一个包含多个字段的表达式吗?如果是这样,鉴于字段可能是不同的数据类型,最好使用什么运算符。
以下问题中给出了一个示例: ServiceStack Ormlite and RowVersion support
要使用的有效表达式是匿名类型;甚至一个具有隐式成员名称的问题,如以下问题所述:C#: Anonymous types and property names。
db.UpdateOnly(new Person { FirstName = "JJ", Age = 12 },
(Person p) => new { p.FirstName, p.Age } );
请注意,在我的示例中,我声明了 lambda 参数的类型。这可能不是绝对必要的,但是没有它我会得到一个 Mono 编译器错误。
Error CS0016: Could not write to file `***', cause: Type '<>__AnonType1`2' was not completed.