"File_ID"열이있는 File 테이블이 있다고 가정 해 보겠습니다.LINQ를 사용하여 테이블의 모든 행에 대해 열 값을 설정하는 방법은 무엇입니까?
파일 테이블의 모든 "File_ID"를 "1"로 설정하는 빠른 LINQ 쿼리/문을 작성하려면 어떻게해야합니까?
저는 Statement 모드에서 LINQPad를 사용하고 있습니다 만, 그건 중요하지 않습니다.
"File_ID"열이있는 File 테이블이 있다고 가정 해 보겠습니다.LINQ를 사용하여 테이블의 모든 행에 대해 열 값을 설정하는 방법은 무엇입니까?
파일 테이블의 모든 "File_ID"를 "1"로 설정하는 빠른 LINQ 쿼리/문을 작성하려면 어떻게해야합니까?
저는 Statement 모드에서 LINQPad를 사용하고 있습니다 만, 그건 중요하지 않습니다.
LINQ는 업데이트하는 것이 아니라 쿼리하는 것입니다. LINQ to SQL (및 기타 데이터 원본) 모델은 Add, Remove, getters 및 setters의 기존 개체 모델과 Update()를 사용하여 데이터 백업에 변경 집합을 커밋합니다.
설명하는 것은 단순히 테이블 컬렉션의 모든 레코드 개체를 반복하고 속성을 설정하고 Update()
을 호출하는 것입니다. 단일 UPDATE
명령으로 SQL에서이 작업을 수행하는 것이 훨씬 빠르고 효율적입니다.
dataContext.ExecuteQuery("update File set File_ID = 1");
일종의 부정 행위
using(var ctx = new MyDataContext())
{
foreach(var f in ctx.Files)
{
f.File_ID = 1;
}
ctx.SubmitChanges();
}
을
이것은 Linq2SQL 기껏 무엇 아니지만,이 같은 시도 할 수 :
myDataContext.ExecuteQuery("UPDATE [File] SET File_ID = {0}", 1);