現在、クライアント データベースから中央の DB ストアにデータを移行しようとしているプロジェクトがあります。次に、Web サービス メソッドを介してデータをクライアントに公開します。
私たちがやりたいことの 1 つは、データの T-SQL タイムスタンプ (または行バージョン) 列を利用することです。これにより、クライアントはデータのローカル バージョンを私たちのデータと比較してチェックできます。バージョン > 10" のデータ
Entity Framework はタイムスタンプ列をバイト配列として解釈するため、LINQ でコードを記述してバージョン > X のデータのすべての行を取得する最良の方法を理解できないため、これは少し問題があることがわかります。バージョンのバイト[]です。
疑似コードで
getdata(int checkVersion)
{
return Shoppers.Where(s=>s.Version > checkVersion).ToList();
}
//==> need to convert the Version column from Byte[] to int somehow in Linq-Entities
1 つの提案は、バージョン (タイムスタンプ) 列を変換する bigint 型のテーブルに新しい計算列を作成することです。
テーブルに別の列を導入せずに、実際にLINQでこれを行う方法があるのだろうか?