【发布时间】:2016-07-07 16:23:45
【问题描述】:
我遇到了实体框架的问题,并且 MVC ActionResult 返回部分视图。 我创建了非常示例代码来从数据库中检索数据到部分视图操作,并将数据插入到部分视图作为普通数据模型。 但是当我使用相同的代码来检索数据时,它不起作用并返回空模型,当我将它与返回正常 View 的正常 ActionResult 一起使用时,它就可以工作了。
这是部分视图操作:
public ActionResult PaperSpecification()
{
var _sheets = _entity.Sheets.ToList();
return PartialView("_SheetSpecificationPartial", _sheets);
}
_entity 变量在控制器类中定义为私有。
我以前的想法相同,但在索引操作中
public ActionResult Index()
{
var _sheets = _entity.Sheets.ToList();
return View(_sheets);
}
这是索引视图:
@{
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 操作。将您的部分视图放在索引视图中
标签: c# entity-framework asp.net-mvc-4