我試圖從一個視圖模型傳遞數據,該視圖模型來自2個模型。控制器看起來是這樣的在ASP.NET MVC中使用視圖模型列出數據困難
public ActionResult SessionDetails()
{
var Sessions = (from a in db.Appointments
join c in db.Clients
on a.clientid equals c.id into SessionList
from c in SessionList.DefaultIfEmpty()
select new SessionViewModel()
{
id = a.id,
sessionnotes = a.sessionnotes,
firstname = c.firstname,
date = a.date,
}).ToList()
.Select(x => new SessionViewModel()
{
id = a.id,
sessionnotes = a.sessionnotes,
firstname = c.firstname,
date = a.date,
});
return View(Sessions);
}
它提出錯誤說名稱「a」在當前上下文中不存在?關於發生了什麼的任何想法?
我真的很陌生,我遵循這些指示使用網站http://techfunda.com/howto/262/list-data-using-viewmodel這做我想要SessionDetails
做。
我已經對此有看法。
UPDATE
我已經作出以下改動:
public ActionResult SessionDetails()
{
var Sessions = (from a in db.Appointments
join c in db.Clients
on a.clientid equals c.id into SessionList
from c in SessionList.DefaultIfEmpty()
select new SessionViewModel()
{
id = a.id,
sessionnotes = a.sessionnotes,
firstname = c.firstname,
date = a.date,
}).ToList();
return View(Sessions);
}
但是當我運行它,我得到這個:System.NotSupportedException
類型的異常出現在EntityFramework.SqlServer.dll但沒有在用戶代碼中處理。
附加信息:實體或複雜類型fypag.Models.SessionViewModel
不能在LINQ to Entities查詢中構造。
你不需要第二'。選擇()' - 你已經創建了一個'名單'(如果你這樣做,那裏面的第二,它的'id = x.id'(不是'a.id'),因爲你使用'.Select(x =>' –
愚蠢的我!顯然不是很好在以下指令:' – AALI93
,但現在我有錯誤:實體或複雜類型'fypag.Models.SessionViewModel'不能在LINQ to Entities查詢中構造。 – AALI93