ドロップダウン リストにデータを入力するビューを作成しようとしている JQuery Mobile アプリがあります。コントローラーでモデルの IEnumerable リストを作成し、それをビューに渡します。ビューはレンダリングされず、「ページの読み込みエラー」と表示されます(J-Queryから)。Layout= 行のビューの上部にブレークポイントを配置しても、そこに到達しません。
これが私のコントローラーです:
public virtual ActionResult List()
{
string customerCode = RouteData.Values["id"].ToString();
var csdDB = new DBContext(customerCode);
// Return all locations
IEnumerable<SelectListItem> sites = csdDB.Sites
.OrderBy(o => o.SiteName)
.AsEnumerable()
.Select(s => new SelectListItem
{
Text = s.SiteName,
Value = s.SiteID.ToString()
});
return View(sites);
}
ビューは次のとおりです。
@{
ViewBag.Title = "Site";
Layout = "~/Views/Shared/_Layout.cshtml";
}
@model IEnumerable<Models.Site>
<div data-role="content">
<ul data-role="listview" data-divider-theme="b" data-inset="true">
<li data-role="list-divider" role="heading">
Locations
</li>
@foreach(var site in Model)
{
<li data-theme="c">
<a href="~/Site/SiteMenu/@site.SiteID" data-transition="slide">
@site.SiteName - (@site.ICAO)
</a>
</li>
}
</ul>
</div>
このページは、次のように前のページから呼び出されます。
<li data-theme="c">
@Html.ActionLink("Sites by HTML.ActionLink", "List", "Site", new { id = @ViewBag.CustomerCode }, new
{
data_native_menu = "false",
name = "",
data_theme = "c"
})
</li>
DBContext は、Entity Framework を使用して作成されました。また、「サイト」リストが作成されていることを確認しました。
ビューが読み込まれない理由について何か考えはありますか?