ここで LINQ の使い方を学び、クラシック SQL と ADO の経験が豊富です。
プロジェクトを続行して型の変更に費用がかかりすぎる前に、varbinary 列を使用する正しい方法を教えてください。LINQ でどのように宣言する必要がありますか? 痛みを引き起こさないようにするために、どのタイプにマップする必要がありますか。
今、byte[] 配列へのマッピングをテストしましたが、いくつかの初期テストでうまく機能します。ストリームから収集したデータを保存する予定で、ストリームの内容はToArray()
メソッドを介してバイト配列形式で取得できるため、このアプローチは実行可能であると思われます。
private byte[] _testVarbinary;
[Column(Storage="_testVarbinary")]
public byte[] testVarbinary
{
get
{
return this._testVarbinary;
}
set
{
this._testVarbinary = value;
}
}
...
// Reading
Console.WriteLine("Field size: {0}", f.testVarbinary.Length);
// Updating
f.testVarbinary = new byte[]{128, 129, 130, 131};
db.SubmitChanges();
では、代わりに他のより LINQ 風の型にマップする必要がありますか? または、基本に固執するbyte[]
だけで問題ありません。