OrmLite 拡張メソッドUpdateOnlyを使用して複数のフィールドを一度に更新することはできますか?
ドキュメントに記載されている例は次のとおりです。
db.UpdateOnly(new Person { FirstName = "JJ" }, p => p.FirstName);
複数のフィールドを含む式を提供できますか? もしそうなら、フィールドが異なるデータ型である可能性があることを考えると、使用するのに最適な演算子は何ですか?
OrmLite 拡張メソッドUpdateOnlyを使用して複数のフィールドを一度に更新することはできますか?
ドキュメントに記載されている例は次のとおりです。
db.UpdateOnly(new Person { FirstName = "JJ" }, p => p.FirstName);
複数のフィールドを含む式を提供できますか? もしそうなら、フィールドが異なるデータ型である可能性があることを考えると、使用するのに最適な演算子は何ですか?
例は次の質問で与えられました: ServiceStackOrmliteとRowVersionのサポート
使用する有効な式は匿名型です。この質問で説明されているように、暗黙のメンバー名を持つものでも:C#:匿名の型とプロパティ名。
db.UpdateOnly(new Person { FirstName = "JJ", Age = 12 },
(Person p) => new { p.FirstName, p.Age } );
私の例では、ラムダ引数の型を宣言したことに注意してください。これは厳密には必要ないかもしれませんが、それがないとMonoコンパイラエラーが発生していました。
Error CS0016: Could not write to file `***', cause: Type '<>__AnonType1`2' was not completed.