我正在嘗試使用ASP.NET MVC 2 Preview 1項目設置xVal。我基本上是按照http://blog.codeville.net/2009/01/10/xval-a-validation-framework-for-aspnet-mvc/的例子(僅服務器端,到目前爲止)。xVal錯誤消息出現兩次
我已經註釋一個博客帖子的實體,這裏是郵政動作:
[HttpPost]
public ActionResult Index(BlogPost b)
{
try
{
_blogService.Insert(b);
}
catch (RulesException ex)
{
ex.AddModelStateErrors(ModelState, "");
}
return (View(b));
}
而這裏的服務方法:
public void Insert(BlogPost post)
{
var errors = DataAnnotationsValidationRunner.GetErrors(post);
if(errors.Any())
{
throw new RulesException(errors);
}
_blogRepo.Insert(post);
}
(注意DataAnnotationsValidationRunner是逐字從例如博客文章)。當我提交一個完全無效的博文形式,我得到驗證錯誤此列表:
- 的值是必需的。
- 請輸入標題
- 請輸入一個發佈日期
- 請輸入一些內容
- 請輸入標題
- 請輸入一個發佈日期
- 請輸入一些內容
我甚至不知道第一條消息的用途,但正如你所看到的,其他錯誤出現兩次。我究竟做錯了什麼?或者這是MVC V2的問題?
是的,就是這樣。哇,我其實並不認爲註釋的東西會很容易工作。無論如何,另一個錯誤是因爲我沒有設置Id值來使用私有集合(NHibernate POCO)。非常感謝! – 2009-08-10 01:19:22