主要问题:ASP.net MVC本地化|为什么这是困难的方式?
为什么要使用自定义的本地化帮手,如果有内置的已经在做同样的事情?
说来话长
目前我一直在阅读了许多选项来本地化asp.net的MVC的网站。例如,2008年10月22日,大多数帖子都是旧的。
我认为最有联系的选项之一是: Matt Hawley on eWorld。此选项创建一个可用于本地和全球资源的可用于
Html.Resource("ResourceName")
Html.Resource("GlobalResourceFileNameWithoutExtension, ResourceName")
的Html帮助程序。其他使用
<asp:label meta:resourcekey="lblNameResource1" runat="server"/>
代替
<label></label>
一些问题的同时,努力,我发现在使用中< .asp的方法我有:标签>我的部分页面收到一些非常错误,如我的部分网页渲染:
Validation of viewstate MAC failed. If this application is hosted by a Web Farm or
cluster, ensure that <machineKey> configuration specifies the same validationKey and
validation algorithm. AutoGenerate cannot be used in a cluster.
最后,我想知道,为什么这一切的麻烦,如果有喜欢的标准方法:
<%= GetLocalResourceObject("lblNameResourceKey") %>
使用内置函数的缺点是什么?当然,我不喜欢使用字符串键,但所有方法都使用它们,所以我认为这是不可避免的。我能想到的唯一缺点是每个字符串都需要它的关键字,而使用asp:标签有一些自动功能内建(如lblName.Text/lblName.ToolTip等)。但是为什么这个马特霍利传言呢?他使用与内置的GetLocalResourceObject完全相同的方法,只是用他自己的帮助器方法以不同的方式命名它?
或者我错过了什么?
确实,以前见过它。但最终我的主要问题保持不变。为什么所有这些博客帖子,如果它不真正添加到原来的内置的东西? – bastijn 2009-11-05 19:47:13
你的问题是为什么人们在他们的博客上提出的不是理想的解决方案?如果他们不这样做,它不会成为博客! :) – 2009-11-05 21:12:08
我的问题是如果他们的解决方案和内置函数之间有差异。他们为什么打扰写它。我错过了什么,或者仅仅是为了代码方便(好方法名称?)。或者它增加了额外的功能。 – bastijn 2009-11-05 22:30:14