Asp.Net本地化:如何处理XML数据文件

本文关键字:处理 XML 数据 文件 本地化 Net 何处理 Asp | 更新日期: 2023-09-27 18:29:08

基于aspnetmvc国际化这篇文章,我为每个语言环境创建了一个单独的资源文件。我可以处理所有的视图和内置代码。但我应该如何处理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不起作用。这是一个类似于网站地图的地方。

Asp.Net本地化:如何处理XML数据文件

我提出了一个解决方案,为每个区域设置一个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.E.xml、TopMenu.es.xml

.BindToXML(CultureHelper.GetPath(),"/items/*").GetHtml()