【问题标题】:Asp.Net Localization : How to process XML data file?Asp.Net 本地化:如何处理 XML 数据文件?
【发布时间】:2014-11-05 08:49:33
【问题描述】:
基于文章aspnet-mvc-internationalization,我为每个语言环境创建了一个单独的资源文件。我可以处理所有视图和内置代码。但是我应该如何处理 XML 文件中指定的数据呢?
<?xml version="1.0" encoding="utf-8" ?>
<items>
<item Text="@Resources.Home" NavigateUrl="~/Home">
<item Text="@Resources.Dashboard" NavigateUrl="~/Routing/Dashboard"/>
</item>
</items>
@Resources.Home 不起作用。这类似于站点地图。
【问题讨论】:
标签:
c#
asp.net
xml
asp.net-mvc
localization
【解决方案1】:
我想出了一个解决方案,为每个区域设置一个 xml 文件。然后将路径与语言环境帮助类绑定。
public static string GetPath()
{
var culture = Thread.CurrentThread.CurrentUICulture;
string letters = culture.TwoLetterISOLanguageName;
if (String.IsNullOrWhiteSpace(letters))
return String.Empty;
return HttpContext.Current.Server.MapPath(String.Format("~/App_Data/TopMenu.{0}.xml", letters));
}
例如TopMenu.en.xml, TopMenu.es.xml
.BindToXML(CultureHelper.GetPath(), "/items/*").GetHtml()