該視圖中的代碼是否確實進行了延遲加載,並且每次碰到數據庫?如果是這樣,是否有解決方案,我如何知道它是否碰到數據庫?帶有實體框架的ASp.NET MVC:視圖中的急切和延遲加載
@{
int langId = ViewBag.LangId;
int i = 0;
foreach (var item in Model)
{
i++;
<tr class="@(i % 2 == 0 ? "even" : "odd")">
<td>
@Html.DisplayFor(modelItem => item.AlbumsLocs.FirstOrDefault(b => b.LanguageId == langId).Title)
</td>
</tr>
}
}
和我的控制器代碼:
public ViewResult Index()
{
var moduleItems = db.Albums.Include(x => x.AlbumsLocs).Where(a => a.AlbumVocId == id).ToList();
return View(moduleItems);
}
您應該使用針對實體框架的分析器,它可以向您顯示其生成的流量和查詢。 –
您使用的是哪個數據庫? Microsoft SQL Server有一個內置的分析工具,可以顯示數據庫查詢的SQL文本。我懷疑其他數據庫可能有類似的工具。 –
感謝您的幫助,但是您能否知道這個代碼是否每次都是在數據庫中? –