考慮這個,我有一個類中,我想查詢該對象在foreach語句的Linq表:更改foreach語句中的Linq對象?
IQueryable< tab_policy> Result=from c in db.tab_policy select c;
foreach(int i=0;i<3;i++)
{
Result = from c in Result
join d in db.tab_reg_type_one_to_many.Where(a => a.reg_id==i)
on c.poli_id equals d.poli_id
select c;
}
基於先前迭代的價值如何更改結果變量在每次迭代??? 我在這個例子中得到的值只等於最後一次迭代而不是所有的迭代,而在這種情況下,每次迭代結果在foreach內部變化。 雖然當我使用這種迭代沒有像foreach一樣遵循它正常工作。
Result = from c in Result
join d in db.tab_reg_type_one_to_many.Where(a => a.reg_id==0)
on c.poli_id equals d.poli_id
select c;
Result = from c in Result
join d in db.tab_reg_type_one_to_many.Where(a => a.reg_id==1)
on c.poli_id equals d.poli_id
select c;
Result = from c in Result
join d in db.tab_reg_type_one_to_many.Where(a => a.reg_id==2)
on c.poli_id equals d.poli_id
select c;
這foreach語句無法正常工作,你混淆了foreach和語法標準。 – Penfold
爲什麼foreach生病? =) –
請提供實際編譯的代碼。 –