您的位置:首页 > 编程语言 > ASP

ASP.NET MVC实践系列3-服务器端数据验证

2009-10-27 11:26 573 查看
我们这里主要讲解ASP.NET MVC中服务器端得数据验证,至于客户端验证我们会在以后的系列中讲到。

在Controller中有一个ModelState属性,这是一个类型为ModelStateDictionary的ModelState类型的字典集合。在进行数据验证的时候这个属性是比较有用的。在使用Html.ValidationMessage()的时候,就是从ModelState中检测是否有指定的KEY,如果存在,就提示错误信息。

1、基本实例

在View中添加如下文件

Code
[AcceptVerbs(HttpVerbs.Post)]
public ActionResult NewsEdit(int id, FormCollection formValues)
{
NewsDataDataContext dc = new NewsDataDataContext();
News news = dc.News.First(n => n.id == id);
try
{
UpdateModel(news);
dc.SubmitChanges();
return RedirectToAction("Details", new { id = id });
}
catch (Exception)
{
foreach (var issue in news.GetRuleViolations())
{
ModelState.AddModelError(issue.PropertyName, issue.ErrorMessage);
}
return View(news);
}
}
注:当对DataDataContext执行SubmitChanges方法时会触发OnValidate分布方法。

3、源码

4、参考:

/content/3575345.html

《Professional ASP.NET MVC 1.0》
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: