【发布时间】:2011-04-07 10:47:47
【问题描述】:
我有一个带有标准提交的 ExtJs 表单面板:false。提交时,控制器将验证表单数据,因为某些验证将在服务器上进行(例如检查名称是否唯一)。如果提供的实体无效,则会向客户端发送一个 JsonResult 以通知用户哪些字段无效。这完美无缺。如果实体有效,它将存储在数据库中,控制器必须将用户重定向到特定视图。
结果是视图提供的 HTML 被发送到期望 JSON 响应的客户端。显然,这是行不通的。
public override ActionResult Create(FormCollection formCollection)
{
Models.Relatie relatie = Repository.CreateNew();
SetFormValues(relatie, formCollection);
if (ModelState.IsValid)
{
_relatieService.CreateRelation(relatie);
ViewResult view = View("Index");
return view; //pumps html while client expects JSON
}
else
{
JsonResult json = Json(new { success = false, errors = ModelState.ToDictionary() });
return json;
}
}
我一直在寻找解决方案超过 8 小时,有人可以帮助我吗?
【问题讨论】:
标签: asp.net-mvc json extjs