2011-09-11 25 views
0

到目前爲止,如果我想更新表,我正在使用類似這樣的東西。帶有非IQueryable的BLToolkit更新

var myData = from t1 in db.Table1 
where ... 
select new { do some math here }; 

,然後我會打電話

myData.Update(db.Table2, x => new Table2 
{ 
    update columns here 
} 

這工作不錯,但現在我需要的myData的查詢到列表(轉換),所以我可以在另一個更新調用以後使用相同的數據。 IQueryable的問題是,當我第二次使用此「myData」在代碼中調用Update時,它包含兩次更新之間受影響的數據,並且我希望數據與第一次更新之前的數據相同。

所以我需要這個

var myData = (from t1 in db.Table1 
where ... 
select new { do some math here }).ToList(); 

像以前一樣使用相同的調用來更新表。

回答

1
var myData = 
    from t1 in db.Table1 
    where ... 
    select new { do some math here }; 

var myDataList = myData.ToList(); 

myData.Update(db.Table2, x => new Table2 
{ 
    update columns here 
} 

這是你在找什麼?

+0

不完全。我需要這個 myDataList.Update(db.Table2,X =>新表2 { 更新這裏 列} 但它是不可能的,因爲myDataList現在對象,而不是查詢 –