這是我的LINQ查詢,請幫我在改變這個LINQ查詢使用Lambda表達式查詢:在查詢語法轉換的LINQ to lambda語法
var query = from d in db.customers
from s in db.tbl_states
where d.cust_state == s.state_id
select new
{
d.cust_name,
s.state_name
};
這是我的LINQ查詢,請幫我在改變這個LINQ查詢使用Lambda表達式查詢:在查詢語法轉換的LINQ to lambda語法
var query = from d in db.customers
from s in db.tbl_states
where d.cust_state == s.state_id
select new
{
d.cust_name,
s.state_name
};
試試這個:
var query =
db.customers.Join (
db.tbl_states,
d => d.cust_state,
s => s.state_id,
(d, s) => new { d.cust_name, s.state_name }
);
得到一個錯誤:「類型參數的方法「系統。 Linq.Queryable.Join
@ user1993853這應該正常工作,請確保查詢本身正常工作。您從哪裏得到此異常? –
這應該做到這一點:
var query = db.customers.Join(db.tbl_states, d => d.cust_state, s => s.state_id, (d, s) => new { d.cust_name, s.state_name });
獲取錯誤: - 」方法的類型參數System.Linq.Queryable .Init
cust_state和state_id是否是相同的類型?如果不是它們需要的,你的原始查詢也不會有效。 –
我猜你linq
它應該是這樣的
var query = from d in db.customers
join s in db.tbl_states on d.cust_state equals s.state_id
select new
{
d.cust_name,
s.state_name
};
爲Lambda
var list = db.customers
.Join(db.tbl_states,
s => s.tbl_states,
d => d.state_id,
(s, d) => new
{
d.cust_name,
s.state_name
});
你要使用'內join',但你有沒有外鍵關聯的一個表 – spajce