2013-02-07 144 views
3

更新期間支持sql server rowversion的最簡單方法是什麼?ServiceStack Ormlite和RowVersion支持

我嘗試這樣做:

db.UpdateOnly(u, f => new { f.Name, f.Description, f.Modified, f.ModifiedBy }, f => f.Version == u.Version && f.Id == u.Id); 

但失敗草草收場,因爲它比較版本爲Varchar(8000),去圖。

不完全一樣,但仍然是一個ServiceStack和OrmLite問題:

什麼是渴望負載相關的實體描述的最佳方式?我有seen this,但注意到Join變更集正在簽入?這導致POCO類現在對每個外鍵都有額外的「忽略」描述。

回答

4

由於RowVersion是byte[]字段,因此它需要參數化支持更新/插入其中have been added to ServiceStack.OrmLite in v3.9.37

Join支持是我們計劃添加到OrmLite的新的表達式構建器的一部分,它尚未準備好。對於急切的加載,您可以使用自定義SQL或取決於您的查詢,您可能能夠join the result sets in-memory using Linq2Objects

+0

感謝您的回覆。我期待着下一個版本。我將此標記爲現在的答案,但認爲在樣本可用時添加樣本是值得的。 –