XML-файл ресурса - PullRequest
       11

XML-файл ресурса

0 голосов
/ 04 ноября 2010

Мне было поручено создать XML-файл ресурса для статического содержимого нашего веб-сайта, чтобы мы могли найти содержимое в этом XML-файле по определенному идентификатору и отобразить его.Например, если мы написали «Добро пожаловать на xyz.com» на нашей домашней странице, оно должно быть сохранено в xml-файле, например

<word>
  <add Key="welcome" value="Welcome to xyz.com" />
</word>

<word>
  <add key="key1" value="some other static content" />
</word>

, чтобы мы могли отображать текст по id = "welcome"... plz help.

обращаясь к файлу ресурса как

string key = "Home";
             string resourceValue = string.Empty;
             string resourceFile = "Resource";//name of my resource file Resource.resx

             string filePath =System.AppDomain.CurrentDomain.BaseDirectory.ToString();

             ResourceManager resourceManager = ResourceManager.CreateFileBasedResourceManager(resourceFile, filePath, null);


             resourceValue = resourceManager.GetString(key);

и получая следующую ошибку

Could not find any resources appropriate for the specified culture (or the neutral culture) on disk.
baseName: Resource  locationInfo: <null>  fileName: Resource.resources

1 Ответ

3 голосов
/ 05 ноября 2010

Попробуйте формат XML, подобный следующему:

<Page Id="Home">
    <Elements>
        <Element Id="welcome">
            <Value>Welcome to xyz.com</Value>
        </Element>

        <Element Id="key1">
            <Value>some other static content</Value>
        </Element>      
    </Elements>
</Page>

Почему?Моя первая мысль: каждой странице нужен свой идентификатор.Итак, я показал страницу под названием «Дом» с двумя элементами.Также используя теги, а не атрибуты, можно использовать разделы CDATA [http://en.wikipedia.org/wiki/CDATA], если у вас есть символы, которые необходимо экранировать.В противном случае вам придется преобразовать <,>, и &, и это будет ужасно.

<Element Id="key1">
    <Value><![CDATA[some other static content with < > in it!]]></Value>
</Element>

Или как насчет того, что вы хотите добавить div?с классом?

<Element Id="key1">
    <Value><![CDATA[<div class="wrapper">some other static content with in it!</div>]]></Value>
</Element>

Это лучше.

В общем, я использую теги больше, чем атрибуты.Теги проще найти с помощью XPath.

...