Tag: modelstate

ASP.NET MVC – 如何保留RedirectToAction的ModelState错误?

我有以下两个操作方法(简化问题): [HttpGet] public ActionResult Create(string uniqueUri) { // get some stuff based on uniqueuri, set in ViewData. return View(); } [HttpPost] public ActionResult Create(Review review) { // validate review if (validatedOk) { return RedirectToAction("Details", new { postId = review.PostId}); } else { ModelState.AddModelError("ReviewErrors", "some error occured"); return RedirectToAction("Create", new { uniqueUri = Request.RequestContext.RouteData.Values["uniqueUri"]}); } } […]

ASP.NET MVC如何将ModelState错误转换为json

如何获得所有ModelState错误消息的列表? 我发现这个代码得到所有的键:( 返回与ModelState错误键的列表 ) var errorKeys = (from item in ModelState where item.Value.Errors.Any() select item.Key).ToList(); 但是,我怎么会得到错误消息作为IList或IQueryable? 我可以去: foreach (var key in errorKeys) { string msg = ModelState[error].Errors[0].ErrorMessage; errorList.Add(msg); } 但是,这是做手动 – 当然有一种方法来使用LINQ? .ErrorMessage属性到目前为止,我不知道如何编写LINQ链…

Asp.net MVC ModelState.Clear

任何人都可以给我一个在ASP.NET MVC中的模型状态(或链接到一个)的angular色简洁的定义。 特别是我需要知道在什么情况下调用ModelState.Clear()是必要或可取的。 位开放式的呵呵 …对不起,我想这可能会帮助,如果告诉你我正在做什么: 我有一个名为“页面”的控制器上的编辑动作。 当我第一次看到表单来改变页面的细节时,所有东西都加载正常(绑定到“MyCmsPage”对象)。 然后,我单击一个button,为MyCmsPage对象的一个​​字段( MyCmsPage.SeoTitle )生成一个值。 它生成罚款和更新的对象,然后返回与新修改的页面对象的行动结果,并期望相关的文本框(呈现使用<%= Html.TextBox("seoTitle", page.SeoTitle)%> )被更新。 ..但唉,它显示了旧的模型加载的价值。 我已经通过使用ModelState.Clear()来解决它,但我需要知道为什么/如何工作,所以我不只是盲目地做。 的PageController: [AcceptVerbs("POST")] public ActionResult Edit(MyCmsPage page, string submitButton) { // add the seoTitle to the current page object page.GenerateSeoTitle(); // why must I do this? ModelState.Clear(); // return the modified page object return View(page); } ASPX: <%@ Page Language="C#" […]

ModelState.AddModelError – 如何添加一个不属性的错误?

我在Create(FooViewModel fvm){…}检查我的数据库以查看fvm.prop1和fvm.prop2已经存在于该组合中; 如果是这样,我想向模型状态添加一个错误,然后返回整个视图。 我试过了: public ActionResult Create(FooViewModel fvm){ if (ThatComboAlreadyExists(fvm)) { ModelState.AddModelError("Model", "There is already one like that"); return View(fvm); } } …但是我在validation摘要中没有显示错误,这是我认为会出现的地方。 我怀疑“模型”不是正确的关键,但我一直没能find任何Google的东西。

validation:如何使用Ninject注入模型状态包装器?

我正在看这个教程http://asp-umb.neudesic.com/mvc/tutorials/validating-with-a-service-layer–cs关于如何包装我的validation数据。 我想使用dependency injection。 我正在使用ninject 2.0 namespace MvcApplication1.Models { public interface IValidationDictionary { void AddError(string key, string errorMessage); bool IsValid { get; } } } //包装 using System.Web.Mvc; namespace MvcApplication1.Models { public class ModelStateWrapper : IValidationDictionary { private ModelStateDictionary _modelState; public ModelStateWrapper(ModelStateDictionary modelState) { _modelState = modelState; } #region IValidationDictionary Members public void AddError(string key, string […]