我正在使用asp.net mvc 3实现一个多语言网站 一位朋友向我建议了这个项目https://github.com/danielcrenna/i18n
到目前为止,我已成功使其在控制器和视图(剃刀)中工作,但在数据注释中却没有。
例如
public class LogOnModel
{
[i18n.DataAnnotations.Email]
[Required(ErrorMessage = "Required Field")]
[i18n.DataAnnotations.DataType(DataType.EmailAddress)]
public string Email { get; set; }
[i18n.DataAnnotations.Required(ErrorMessage = "Required Field")]
[DataType(DataType.Password)]
[i18n.DataAnnotations.Display(Name = "Password")]
public string Password { get; set; }
[i18n.DataAnnotations.Display(Name = "Remember me?")]
public bool RememberMe { get; set; }
}
只要构建成功,上面的代码就会在.po文件中生成新条目。但没有任何事情发生。
有没有人知道这个? 提前谢谢!
答案 0 :(得分:0)
我无法对你在GitHub中使用的i18n框架发表评论,但如果它有所帮助,那么在.NET中会有类似的东西。在.NET中执行此操作的方式不是基于.po,而是基于编译到附属程序集中的资源。
对于MVC,您可以使用DisplayAttribute指定包含您要使用的资源字符串的类型。验证消息有等效的属性。
答案 1 :(得分:0)
似乎使用i18n v1无法使i18n.DataAnnotations工作,我在github上问了问题https://github.com/turquoiseowl/i18n/issues/104