具有多语言动态内容的网站的最佳实践

时间:2015-08-08 22:20:13

标签: c# asp.net-mvc entity-framework multilingual

我正在开发MVC网站,并且我试图了解存储和使用动态内容的最佳方式,例如:多种语言的新闻文章,博客文章等。

目前我的模型具有两种语言属性,我根据所选语言和文化切换输出语言,并使用简单的switch/case

我的方法是否足够,或者使用MVC和实体框架是否有更好的做法?

目前我有以下型号

public class NewsArticle
{
    public virtual int ID { get; set; }
    public DateTime DateCreated { get; set; }
    public DateTime DateUpdated { get; set; }

    public EntityStatus Status  { get; set; }

    [DataType(DataType.Date)]
    public DateTime ReleaseDate { get; set; }

    public string Title_English { get; set; }
    public string Title_Spanish { get; set; }

    public string PromoSample_English { get; set; }
    public string PromoSample_Spanish { get; set; }

    [AllowHtml]
    public string Body_English { get; set; }
    [AllowHtml]
    public string Body_Spanish { get; set; }
}

如果我需要在别处问这个问题,请告诉我。

1 个答案:

答案 0 :(得分:1)

您可以使用资源文件执行此操作,每种语言都有一个resx文件:

Mui.resx default
Mui.es.resx
Mui.fr.resx 
etc.

并通过调用

在视图和控制器中使用它
Mui.Key

e.g。 Mui.HomePageTitle

你可以在这里现场演示:http://prodinner.aspnetawesome.com/ 请参阅右上角的语言下拉列表