DisplayForModel与全球化

时间:2012-05-16 13:45:52

标签: c#-4.0 razor localization globalization asp.net-mvc-4

我们正在开发一个应该用葡萄牙语和英语工作的网站! 为此,我们创建了以下架构:

  • 每个类(Product,Service,Contact ..)都有一个pt-br字段和一个en-us字段。以下是一个示例:http://chopapp.com/#1u9no3qw

  • 要以正确的语言显示视图,我们使用的方法: Solution

Remover.cshtml和Remover.us-en.cshtml

视图之间没有区别!

@using Resources
@using Dicionario = Semep.Recursos.Admin.Pagina.Remover
@model PaginaViewModel

@section css {
    @Script.StylesForms()
    <link href="~/Areas/Admin/Content/controller/paginas/remover.css" rel="stylesheet" type="text/css" />
}

@using (Html.BeginForm())
{
    @Html.AntiForgeryToken()
    <legend>@Dicionario.DesejaRemoverEstaPagina</legend>
    <fieldset>
        @Html.ValidationSummary(false, Strings.VerifiqueOsErrosAbaixo)
        @Html.DisplayForModel()
    </fieldset>

    <div class="buttons">
        @Html.ActionLink("Cancelar", "Index", "Solucoes")
        <input type="submit" value="SIM" />
    </div>
}

DisplayTemplates \ PaginaViewModel.cshtml

显示字段pt-br!

@model PaginaViewModel

@Html.DisplayFor(p => p.ID)

<div class="display-label">
    @Html.LabelFor(p => p.Link)
</div>
<div class="display-field">
    @Html.DisplayFor(p => p.Link)
</div>

<div class="display-label">
    @Html.LabelFor(p => p.Nome)
</div>
<div class="display-field">
    @Html.DisplayFor(p => p.Nome)
</div>

<div class="display-label">
    @Html.LabelFor(p => p.Texto)
</div>
<div class="display-field">
    @Html.DisplayFor(p => p.Texto)
</div>

DisplayTemplates \ PaginaViewModel.en-us.cshtml

显示字段en-us!

@model PaginaViewModel

@Html.DisplayFor(p => p.ID)

<div class="display-label">
    @Html.LabelFor(p => p.Link)
</div>
<div class="display-field">
    @Html.DisplayFor(p => p.Link)
</div>

<div class="display-label">
    @Html.LabelFor(p => p.NomeEn)
</div>
<div class="display-field">
    @Html.DisplayFor(p => p.NomeEn)
</div>

<div class="display-label">
    @Html.LabelFor(p => p.TextoEn)
</div>
<div class="display-field">
    @Html.DisplayFor(p => p.TextoEn)
</div>

问题

但是,数据只出现在“pt-br”中 如何在asp.net mvc中使用DisplayTemplates和全球化?

备注

我知道这不是构建数据以配合全球化的最佳方式 但是整个系统都是如此,来维持这个标准!

0 个答案:

没有答案