0
我已經創建了一個ParentModel,因爲我想在這裏面使用兩個模型,以便我可以在MVC中使用相同的視圖。父模型有2個屬性一個來添加空
當我獲得初始加載數據時,父模型中定義的兩個屬性都正確填充。 但是,當我嘗試添加新數據時,我將第二個屬性視爲null。 這裏是我的代碼:
public class UserModel
{
public User User { get; set; }
public IEnumerable<RolesModel> rolesModel { get; set; }
}
[HttpPost]
[ValidateAntiForgeryToken()]
public ActionResult Add(UserModel userDetails)
{
try
{
if (ModelState.IsValid)
{
userDetails.User.FullName = userDetails.User.FirstName + " " + userDetails.User.MiddleName + " " + userDetails.User.LastName;
userDetails.User.CreatedDate = DateTime.Now;
_userService.Insert(userDetails.User);
_unitOfWorkAsync.SaveChanges();
foreach (RolesModel rolesModel in userDetails.rolesModel)
{
// Here userdetails.rolesmodel is null
}
}
查看:
@model Axp.Gcst.Gps.Web.Areas.Admin.Models.UserModel
@using (Html.BeginForm("Add", "user", FormMethod.Post, new { @class = "form-horizontal" }))
{
@Html.AntiForgeryToken()
@Html.Partial("_UserDetails", Model)
@foreach (var itemRole in Model.rolesModel)
{
if (itemRole.Role.RoleGroupId == item.RoleGroupId)
{
<div class="col-md-12 col-sm-12 col-xs-12 panel_cell">
@Html.CheckBoxFor(model => itemRole.isSelected, new { @class = "panel_checkbox" })
@Html.DisplayFor(model => itemRole.Role.Name)
</div>
@Html.HiddenFor(model=>itemRole.Role.RoleId)
}
}
}
Thanks.if(型號=> Model.rolesModel [I] .Role.RoleGroupId == tblTestList [ j] .RoleGroupId)thi sline給出錯誤「無法將lambda表達式轉換爲類型'bool',因爲它不是委託類型」 – user662285
model =>模型應該是model => model.rolesModel –
同樣的錯誤夥計.. – user662285