Step.1 建立語系檔
首先在 Visual Stuio 中建立語系片語檔。除了可用 VS 內建的工具外,推薦安裝 ResXManager 套件,可在一個視窗內同時編輯所有語系內容,功能可說是非常強大呢。建立兩個語系、兩個片語
Step.2 建立 Model 及語系
接著建立 SignIn 資料模型,並將 Model 驗證的錯誤訊息進行多語系設定。using System.ComponentModel.DataAnnotations;
namespace WebApplication1.Models
{
public class SignIn
{
[Required(ErrorMessageResourceType =typeof(MsgResource), ErrorMessageResourceName = "AccountIsRequired")]
public string Account { get; set; }
[Required(ErrorMessageResourceType = typeof(MsgResource), ErrorMessageResourceName = "PasswordIsRequired")]
public string Password { get; set; }
}
}
其實這樣基本上就大功告成了。不過實際運行時卻發現:雖然語系有正確設定,但 Model 驗證回傳的錯誤訊息卻還是回傳預設語系 (英文)。原來 Web.Config 中 system.web 區段內的 Globalization 還需要額外設定:
<globalization culture="auto" uiCulture="auto" enableClientBasedCulture="true" />搞定!
沒有留言 :
張貼留言
注意:只有此網誌的成員可以留言。