Asp.net mvc 不确定我是否理解Asp.NETMVC中的本地化

Asp.net mvc 不确定我是否理解Asp.NETMVC中的本地化,asp.net-mvc,localization,Asp.net Mvc,Localization,我在网上读过关于Asp.Net和MVC本地化的教程等,但我想我不明白。如果你按照上面描述的那样做的话,这看起来是一种非常混乱的处理页面的方式 假设我有一堆观点,其中有很多段落。以下只是部分示例,通常页面上会有更多内容: <div id="homePageSidebar" class="roundedBox"> <div class="infoBoxHeader"> <h2> <%:Html.ActionLi

我在网上读过关于Asp.Net和MVC本地化的教程等,但我想我不明白。如果你按照上面描述的那样做的话,这看起来是一种非常混乱的处理页面的方式

假设我有一堆观点,其中有很多段落。以下只是部分示例,通常页面上会有更多内容:

<div id="homePageSidebar" class="roundedBox">
    <div class="infoBoxHeader">
        <h2>
            <%:Html.ActionLink("Who are we?", "About") %>
        </h2>
    </div>
    <div class="infoBoxContent">
        <p>
            Bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla.
        </p>
        <p id="frontpagedesc">
             Bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla.
        </p>
       <p id="frontpagedesc">
             Bla bla bla bla <a href="blabla">bla bla bla</a> bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla <i>bla bla bla</i> bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla.
        </p>
    </div>

</div>


布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉。

布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉。

布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉。

因此,如果我理解正确,我应该用诸如此类的内容替换每个标记中的文本

最重要的是,这个文本(有时有相当长的段落)应该输入到一个编辑器中,而这个编辑器似乎远远不适合编辑长段落的文本(类似于数据库的资源文件编辑器)

然后,我将使用这些资源标识符(我确信过一段时间后这些标识符会显得相当神秘)来填充文件,而不是使用易于编辑的视图文件?要编辑内容,我必须从资源文件和视图中来回跳转

那么链接、斜体等等呢?它们是在资源文件中以原始html硬编码的,还是应该进一步分割文本(文本直到链接成为一个资源,链接成为另一个资源,句子中的剩余文本成为第三个资源)?我在其中一个教程中看到了一个这样的例子,这将使它更加荒谬

我发现很难相信你真的要这样做。所以我觉得我可能错过了一些基本的东西?我是否完全误解了Asp.NETMVC站点本地化的过程

我发现很难相信你真的要这样做。所以我觉得我可能错过了一些基本的东西?我是否完全误解了Asp.NETMVC站点本地化的过程


不,你没有遗漏任何东西。这就是本地化ASP.NET MVC应用程序所涉及的问题。

您始终可以使用为不同语言提供单独路由和视图的方法。一些人这样做,一些CMS实现支持这种方法。这样您就不必使用资源文件。缺点是,如果你想改变什么,你必须在几个地方做。Darin给出的一个例子假定大多数专家建议的“最佳实践”,这可能并不最适合您。关于这个问题有一场热烈的讨论。我建议您研究提供的解决方案,并为特定项目选择最适合您的解决方案

有关此主题的更多信息,我可以推荐以下堆栈溢出帖子:

我在一篇很棒的博文上有一个链接,一个俄罗斯人解释了英语和俄语的不同观点(相同的原则适用于任何组合),但我现在找不到。如果我以后找到它,我会把它寄出去的


还可以使用一个小工具,以便更轻松地编辑和比较不同的语言资源文件。

Wow。。。好吧,我相信你的话。看起来MVC的开发人员在使web开发结构化、干净和简单方面做了大量的工作,然后这似乎把一切都搞砸了!但是好的,谢谢你的回答,那么我知道我必须做什么了……不幸的是,MVC刚刚继承了标准的ASP.NET方式。老实说,如果RESX编辑器GUI使用起来不那么糟糕,我会很高兴的。