我真的失去了嘗試爲我的MVC3應用程序創建自定義通用驗證消息。MVC3錯誤消息全球化
我看了很多教程和他們最大的部分建議的其中一個選項:
創建App_GlobalResources文件夾,裏面是把我的自定義資源,他們更改Global.asax中,通過字符串名稱我的資源爲
DefaultModelBinder.ResourceClassKey
屬性。將資源的構建操作更改爲「嵌入式資源」。右鍵單擊項目,然後轉到屬性,單擊「資源」選項卡並創建您的自定義資源。將其訪問修飾符設置爲「公開」。
的第一一個沒有工作對我來說,我已經在我的資源下面的鍵: DefaultModelBinder_ValueRequired,InvalidPropertyValue,PropertyValueInvalid,PropertyValueRequired 和使用沒有人時,我我試着在我的模型的必需屬性中提交併填寫空值。 我已經把這個代碼在Global.asax的Application_Start方法中:
DefaultModelBinder.ResourceClassKey = "My_Resource_Name";
隨着第二方法,我已經創建了相同的密鑰作爲第一個的資源。當一個屬性無效或爲空時,它們中沒有一個被默認使用(我也更改了global.asax中的ResourceClassKey,但沒有成功)。但是,當我加了一些參數,數據標註在我的模型:
[Required(ErrorMessageResourceType = typeof(MyResourceFile), ErrorMessageResourceName = "MyCustomKey")]
當該數據註解的屬性是空的,我的消息「MyCustomKey」用於定義!
但我真的不希望手動將其設置爲所有屬性,我想要替換默認錯誤消息,如:「需要{0}」字段。「