2010-06-10 53 views
0

我正在使用ASP.NET MVC綁定框架。ASP.NET MVC綁定 - 重複消息

假設我有一個類Item,它有一個必填字段Id。

我綁定了一個List,並且不希望在這個列表中的每個元素都有一個錯誤消息。

如果在綁定Id字段時發生多於一個錯誤,我只希望將一條消息添加到ModelState中並顯示給用戶。

用一句話:有沒有辦法避免使用ASP.NET MVC綁定框架重複的消息?

+1

聽起來像它會更容易編寫自己的驗證摘要,而不是自己的模型綁定器。 – bzlm 2010-06-10 19:26:07

回答

1

您可以發明自己的解決方案。例如,您的模型聯編程序可以將模型錯誤添加爲特殊的ModelItemException對象。然後,ActionFilter或基礎控制器的OnActionExecuted()方法將遍歷模型狀態錯誤,將所有ModelItemException錯誤帶到那裏,並將它們合併爲單個錯誤。或者你可以有這樣的例外來實現類似

public interface IItemError 
{ 
    public object ItemKey { get; set; } 
    public string Merge(params Exception[] itemErrors); 
} 

隨意改進這個想法。