如何使用實體框架比較rowversion
字段?我有一個表有一個rowversion
列,我想從表格中獲取數據的行版本高於指定值。實體框架中的Rowversion比較
//code
byte[] rowversion = .....somevalue;
_context.Set<T>().Where(item => item.RowVersion > rowVersion);
此行不起作用,它拋出錯誤:
cannot be applied to operands of type 'byte[]' and 'byte[]'
任何想法,我怎麼能比較C#/ EF rowversion
領域?
使用rowversion列,基本上只能檢查是否相等(或不等於) - 您無法真正測試「大於」與否。 –
@marc_s我也這麼認爲,但實際上,仔細一看,[文檔](http://msdn.microsoft.com/en-us/library/ms182776.aspx)提到rowversion值越來越多,它支持觀察到rowversion可以被視爲一個64位的整數,稍後更高的值被插入到數據庫中,並且它是一個64位整數,這意味着沒有現實的溢出機會。 – hvd