0

这就是实现的样子

public class Product
{
    public integer id {get;set;}
    [MultiLangual]
    public string name {get;set;}
}

在数据库中,名称将包含以下内容:

{en:Pataoto, nl: Aardappel, de: Patat, fr: pommes de terre}

这将包含客户提供给他自己的产品的所有翻译字段。(在这种情况下:patato)。

在前端,这将显示为多个 html 元素,我(以某种方式)在提交表单时检测到它是哪种语言。

我的问题是,我该怎么做?我总是坚持创建属性,不知道从哪里继续......

在我的属性中,我不应该做很多事情,就像这样(我认为):

public class MultiLangualAttribute : Attribute
{
    public MultiLangualAttribute() : base()
    { 
    }

    public override string ToString()
    {
        return base.ToString();
    }
}

但是我将如何检测视图中的所有内容并为其创建自定义布局(这应该与 and 一起使用。它只包含文本。

上面的任何想法或更好的实现都会非常有用:)

4

1 回答 1

0

我认为更好的(可以说)实现是应用程序本地化的标准方式。App_GlobalResources您在必须创建的文件夹下定义资源和字符串。例如,您将创建文件Fruits.resx,其中包含要翻译成系统语言的所有水果。之后,您将使用您希望在您的网站中使用的所有语言来创建等Fruits.de.resxFruits.es.resx也可以在运行时更新资源。在这个答案中描述所有方法太多了,我宁愿提供一个或两个链接,其中包含有关 MVC 应用程序本地化的详细教程:

希望这一切对你有帮助,祝你好运

于 2012-08-21T23:13:33.080 回答