0
Entity FrameworkおよびMVC ActionResultで問題が発生しましたが、部分ビューが返されます。 データベースから部分的なビューアクションを取得するサンプルコードを作成し、データを通常のデータモデルとして部分ビューにプラグインしました。 しかし、私は同じコードを使用してデータを取得するとき、それは仕事ではなく空のモデルを返します。通常のActionResultで使用すると、通常のViewに戻ります。コントローラクラスにプライベートとして定義Entity FrameworkがMVCで値を返しません。
public ActionResult PaperSpecification()
{
var _sheets = _entity.Sheets.ToList();
return PartialView("_SheetSpecificationPartial", _sheets);
}
_entity変数:
これは、部分的なビューのアクションです。
私はなく、indexアクションで使用したのと同じ考え方は
public ActionResult Index()
{
var _sheets = _entity.Sheets.ToList();
return View(_sheets);
}
これは、Indexビューです:
@{
ViewBag.Title = "Index";
Layout = "~/Views/Shared/_Layout.cshtml";
}
@model IEnumerable<PrintManager.Models.Db.Sheet>
<h2>Index</h2>
@{
Html.RenderAction("PaperSpecification", "WorkOrder");
}
<ul>
@foreach (var item in Model)
{
<li>@item.SheetName</li>
}
</ul>
そして最後に、これは部分図である:私はこれを考える
<div class="panel panel-primary">
<div class="panel-heading">
<h3 class="panel-title">Paper Specification</h3>
</div>
<div class="panel-body">
<div class="row">
<div class="col-md-3">
<div class="form-group">
<label>Paper Specification</label>
<select class="form-control">
@if (ViewBag.sheets_L != null)
{
foreach (var item in Model)
{
<option>@item.SheetName</option>
}
}
</select>
</div>
</div>
<div class="col-md-3"></div>
<div class="col-md-3"></div>
<div class="col-md-3"></div>
</div>
</div>
</div>
エンティティの問題はありませんが、部分ビューの問題です。コメントでパベルによって示唆されるように
は
'var _sheets = _entity.Sheets.ToList();'にブレークポイントを設定し、データが含まれているかどうかを確認しましたか? –
PaperSpecificationアクションはまったく必要ありません。部分表示をインデックス表示にする –