asp.net-mvc – 传递子对象问题的嵌套部分视图
发布时间:2020-12-16 07:05:41 所属栏目:asp.Net 来源:网络整理
导读:我试图将局部视图中的子对象传递给另一个,我总是得到错误.任何人都可以帮我解决这个问题吗? T.T “传递到字典中的模型项是’Application.Models.PetModel’类型,但是这个字典需要’Application.Models.Calendar’类型的模型项” 主要型号 public class PetM
我试图将局部视图中的子对象传递给另一个,我总是得到错误.任何人都可以帮我解决这个问题吗? T.T
“传递到字典中的模型项是’Application.Models.PetModel’类型,但是这个字典需要’Application.Models.Calendar’类型的模型项” 主要型号 public class PetModel { public string Name { get; set; } public long SpeciesID { get; set; } public long BreedID { get; set; } public Calendar DOB { get; set; } } 子模型 public class Calendar { public int Day { get; set; } public int Month { get; set; } public int Year { get; set; } public DateTime DateObj { get { if (Day != 0 && Month != 0 && Year != 0) { return new DateTime(Year,Month,Day); } return DateTime.Now; } set { if (value != null) { Day = value.Day; Month = value.Month; Year = value.Year; } } } } 主视图 @model Application.Models.PetModel @using (Html.BeginForm("CatchPetContent","Quote",Model)) { @Html.Partial("PetDetailsContent",Model) <input type="submit" value="submit" /> } PetDetailsContent部分视图 @model Application.Models.PetModel @Html.TextBoxFor(x => x.Name) @Html.DropDownListFor(x => x.SpeciesID,(IEnumerable<SelectListItem>)ViewData["TypeList"],"--Please Select--") @Html.DropDownListFor(x => x.BreedID,(IEnumerable<SelectListItem>)ViewData["BreedList"],"--Please Select--") @Html.RenderPartial("UserControl/Calendar",Model.DOB) 日历部分视图 @model Application.Models.Calendar @Html.TextBoxFor(x => x.Day) @Html.TextBoxFor(x => x.Month) @Html.TextBoxFor(x => x.Year) 解决方法
我有同样的问题.在我的情况下,只要子模型为null,框架就会将主模型传递给局部视图.
作为一种解决方法,我在将子模型传递给局部视图之前检查子模型是否为空.如果它为null,那么我要么根本不显示局部视图,要么创建子模型的实例. (再次,它是一个解决方法,直到我找到适合这个问题的解决方案.如果有的话.) (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- .net – 为什么ValidateAntiForgeryTokenAttribute允许匿名
- asp.net-mvc-5 – 如何检查用户是否从MVC5布局文件登录
- 如何在ASP.NET中的多个子域中共享会话?
- ASP.NET Identity 2是否使用machinekey来密码密码?
- asp.net-mvc – 通过WCF服务实现寻呼机
- ASP.NET MVC5 OWIN:通过Facebook登录后,为什么User.Identi
- asp.net-mvc – mvc asp.net中的自定义成员资格提供程序或配
- ASP.NET 5,.NET Core和ASP.NET Core 5有什么区别?
- asp.net-mvc – ASP.Net MVC – HTTP状态代码(即303,401,40
- asp.net – 在wcf服务中使用aspNetCompatibilityEnabled =“
推荐文章
站长推荐
热点阅读