[英]Asp.Net Mvc - Render partial view - Manage errors
我用以下代码获得了一个aspx页面调用ListArticles:
<% Html.RenderPartial("Create", new Models.Article()); %>
创建是局部视图(Create.ascx)。
在我的控制器中,我得到了这样的东西:
if (!ModelState.IsValid) {
return View();
}
因此问题在于,由return View();
生成的return View();
无法呈现出良好的视野。 它应该呈现ListArticles视图,同时在“创建”局部视图中突出显示错误,但仅显示Create.ascx视图。
有办法解决吗?
对于这种情况,我建议您在View中嵌入一个表单,该表单需要发布并显示使用Ajax.BeginForm而不是部分视图的错误。 局部视图更适合显示方案。
您确定已提供所有代码吗?
在控制器中,您正在返回视图,但未将模型传递给它。
所以您需要Return View(Articles)或类似的东西。 如果出错,您仍然需要返回最初用于渲染视图的集合或模型。
您可能将操作名称命名为“ Create”,这就是仅显示Create.ascx视图的原因。 尝试改写以下代码
if (!ModelState.IsValid) {
return View("ListArticles");
}
您应该在Create.ascx中具有Html.ValidationMessage()以查看验证错误
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.