Я использую файл XSL, чтобы сделать рендеринг ASP.NET веб-части, что я сделал, но теперь я хочу, чтобы локализовать строки внутри этого XSL файла:Добавление локализации в XSLT
<xsl:transform xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:siteInfo="urn:siteInfo" version="1.0">
<xsl:output method="html" omit-xml-declaration="no"/>
<xsl:template match="*|/">
<p>
Project name: <xsl:value-of select="siteInfo:GetProjectName()"/>
</p>
В выше примера Я хочу локализовать «Название проекта». язык, на котором я работаю в C# и это фрагмент кода я использую для преобразования:
XslCompiledTransform transformationEngine = new XslCompiledTransform();
XmlUrlResolver resolver = new XmlUrlResolver();
resolver.Credentials = CredentialCache.DefaultNetworkCredentials;
transformationEngine.Load(XslUrl, new XsltSettings(true, true), resolver);
XsltArgumentList args = new XsltArgumentList();
args.AddExtensionObject("urn:siteInfo", siteInfo);
transformationEngine.Transform(xmlDocument, args, ms);
Можно ли сделать локализацию через ресурсные файлы (Resx) в этом XSL файле? В остальной части моего проекта я использую следующую строку, чтобы вставить локализованные строки:
HttpContext.GetGlobalResourceObject(resourceName, resourceKey).ToString();
Уважением,
Йерун
Я действительно хочу использовать только один файл XSL, чтобы избежать ненужных накладных расходов +, так как все работает в SharePoint. Пример SharePoint XML (что-то, чего я хотел бы достичь, где все $ Resources: xxx; заменяются их соответствующим переводом): Xml version = "1.0" encoding = "utf-8"?> < Название проекта = "$ Ресурсы: onet_TeamWebSite;" Revision = "2" ListDir = "$ Ресурсы: core, lists_Folder;" xmlns: ows = "Microsoft SharePoint"> Можно ли сделать какой-либо поиск с регулярным выражением, а затем заменить его? –
Скорее всего, это можно сделать красиво, но вам нужно поставить более полный пример (отформатированный) в ваш вопрос. Пожалуйста, укажите, что является основной проблемой - организует ли определение терминов и их перевод на несколько языков? Или это построение соответствующего имени файла? Пожалуйста, будьте как можно более конкретными. –