Kiy*_*shi 4 model-view-controller asp.net-mvc asp.net-mvc-3
我正在使用这样的代码:
@Html.LabelFor(m => m.Login.Password, new { @class = "adm" })
@Html.PasswordFor(m => m.Login.Password, new { @class = "adm", size = 30 })
@Html.ValidationMessageFor(m => m.Login.Password)
Run Code Online (Sandbox Code Playgroud)
它的工作正常,因为我的数据注释/消息/标签都是英文的.但是,有什么方法可以有多种语言并在它们之间切换?
如果我的网站有一个选择日语和英语的语言选择器怎么办?我可以为每种语言使用不同的数据注释吗?
1>您需要为每种语言创建资源文件
2>然后创建模型
public class User
{
[Required(ErrorMessageResourceType=typeof(Languages.Resource),ErrorMessageResourceName="required")]
[Display(ResourceType=typeof(Languages.Resource),Name="name")]
public string Name { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
3>你的观点还可以
4>要选择和设置不同的语言:您可以创建一个淹没菜单(或任何您想要的),然后在服务器上将所选语言存储在cookie中.并为每个请求设置current_culture_info如下
string currentChoosenLanguage= readFromCookie(); //or may be from Database, whatever suits you
CultureInfo ci = new CultureInfo(currentChoosenLanguage); //i think jp: for japanese
System.Threading.Thread.CurrentThread.CurrentUICulture = ci;
Thread.CurrentThread.CurrentCulture = CultureInfo.CreateSpecificCulture(ci.Name);
Run Code Online (Sandbox Code Playgroud)
请查看以下链接
| 归档时间: |
|
| 查看次数: |
5551 次 |
| 最近记录: |