我正在尝试将两个UserManager
Feedback
模型绑定到一个视图但我面临的问题是视图中不包含任何电子邮件定义...这是我的所有代码
public class FeedbackMixModel
{
public List<UserManager> allUserManagers { get; set; }
public List<Feedback> allfeedbacks { get; set; }
}
控制器==&GT;&GT;&GT;
var user = db.UserManagers.ToList();
var feedbacks = db.Feedbacks.ToList();
var Model = new FeedbackMixModel
{
allUserManagers =user,
allfeedbacks=feedbacks
};
return View(Model);
视图==&GT;&GT;
@model WebApplication5.Models.FeedbackMixModel
<!-- Content Wrapper. Contains page content -->
<div class="content-wrapper">
<!-- Content Header (Page header) -->
<!-- Main content -->
<table class="pretty" id="dt">
<thead>
<tr>
<th >
@Html.DisplayNameFor(model => model.Email)
</th>
<th>
@Html.DisplayNameFor(model => model.CurrentStorage)
</th>
<th>
@Html.DisplayNameFor(model => model.MaxStorage)
</th>
<th>
@Html.DisplayNameFor(model => model.LastLoginMonth)
</th>
</tr>
</thead>
<tbody>
@foreach (var item in Model.allUserManagers)
{
<tr>
<td>
@Html.DisplayFor(modelItem => item.Email)
</td>
<td>
@Html.DisplayFor(modelItem => item.CurrentStorage)
</td>
<td>
@Html.DisplayFor(modelItem => item.MaxStorage)
</td>
<td>
@Html.DisplayFor(modelItem => item.LastLoginMonth)
</td>
</tr>
}
</tbody>
</table>
我完全很困惑如何解决这个问题......电子邮件在UserManager
中的定义如果我做错了我怎么能访问
答案 0 :(得分:2)
您的实际Enumerable
模型本身没有您打算用于标题的属性的定义:
Expression.Lambda<Func<TElementType, bool>>
您现有的模型只包含两个属性:FeedbackMixModel
和<thead>
<tr>
<th>
@Html.DisplayNameFor(model => model.Email)
</th>
<th>
@Html.DisplayNameFor(model => model.CurrentStorage)
</th>
<th>
@Html.DisplayNameFor(model => model.MaxStorage)
</th>
<th>
@Html.DisplayNameFor(model => model.LastLoginMonth)
</th>
</tr>
</thead>
,因此它不知道您引用的allUserManagers
或其他某些属性。根据您当前的代码,这些代码似乎是allFeedbacks
个对象的实际属性,而不是您实际的Email
类。
您可以考虑对标题进行硬编码以表达这些属性:
UserManager
或者您可以尝试定位集合中与this approach类似的第一个元素:
FeedbackMixModel