2009-06-24 1 views

答えて

3

LINQは更新するのではなく照会するためのものです。 LINQ to SQL(およびその他のデータソース)モデルでは、Add、Remove、gettersおよびsetters、Update()の従来のオブジェクトモデルを使用して、データセットにチェンジセットをコミットします。

あなたが説明しているのは、単にテーブルコレクション内のすべてのレコードオブジェクトを反復し、プロパティを設定し、Update()を呼び出すことです。 1つのUPDATEコマンドでSQLでこれを行う方がはるかに高速で効率的です。

dataContext.ExecuteQuery("update File set File_ID = 1"); 
1

ちょっと浮気

using(var ctx = new MyDataContext()) 
{ 
    foreach(var f in ctx.Files) 
    { 
     f.File_ID = 1; 
    } 
    ctx.SubmitChanges(); 
} 
1

これはLinq2SQLは最高の状態であるものではありませんが、あなたはこのような何かを試みることができる:

myDataContext.ExecuteQuery("UPDATE [File] SET File_ID = {0}", 1); 
関連する問題