什么是最好的方式支持多种语言的口中ASP.NET 软应用程序?我已经看到人们使用的资源文件的其他应用程序。这仍然是最好的方式吗?

有帮助吗?

解决方案

如果您使用的是默认的引擎,然后当地资源的工作的意见。但是,如果你需要抓住的资源内的一个控制器的行动,你不能得到本地资源,并须使用全球资源。

这可以当你想到它是因为当地的资源是当地的一个aspx页和在控制器,你还没选择了你的查看。

其他提示

我找到了 这个资源 是非常有帮助的

它是一种包装圆的 HttpContext.电流。GetGlobalResourceStringHttpContext.电流。GetLocalResourceString ,允许你打电话的资源,这样的...

// default global resource
Html.Resource("GlobalResource, ResourceName")

// global resource with optional arguments for formatting
Html.Resource("GlobalResource, ResourceName", "foo", "bar")

// default local resource
Html.Resource("ResourceName")

// local resource with optional arguments for formatting
Html.Resource("ResourceName", "foo", "bar")

唯一的问题,我的发现是,控制没有接到本地资源串。

是的资源仍然是最佳的方式支持多种语言。净的环境。因为他们是容易的参考和更容易添加新的语言。

Site.resx
Site.en.resx
Site.en-US.resx
Site.fr.resx
etc...

所以你是对的仍然使用的资源文件。

果园项目采用快捷方式方法称为"T"做所有在页串的翻译。所以你会看到的标记与@T("一字符串翻译").

我打算看看这是如何实现幕后的和潜在的使用在未来的项目。短名称保持码清洁因为它将被用于 很多.

我喜欢这个方法是原string(英语,在这种情况下)是仍然易见的代码,不要求查阅一个资源工具或其他一些位于解码的什么实际串应该在这里。

看看 http://orchardproject.net 更多的信息。

一些其他的解决方案所提到的为答案不起作用的已发行版的视(他们曾与前一个版本的阿尔法/贝).

这是一篇好文章描述的方式实现本土化,将强类型和不会破坏该单元的测试控制器和意见: 本地化指南视v1

这是另一个选择,你将有机会获得使用在控制器:

检查 MVC3-多语言

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top