StringReader не «читает» данный строковый объект - PullRequest
1 голос
/ 20 апреля 2011

У меня есть таблица в базе данных mysql, где я хранил много строк XML. Строки XML выглядят так:

<?xml version="1.0" encoding="utf-8"?>
<plant>
  <concept>
    <item>Payroll</item>
    <father>administration</father>
    <name>CEO</name>
    <total>25000</total>
    <week1>21000</week1>
    <week2>1000</week2>
    <week3>1000</week3>
    <week4>1000</week4>
    <week5>1000</week5>
    <approval>Not Approved</approval>
  </concept>
  <concept>
    <item>Payroll</item>
    <father>administration</father>
    <name>Cleaning Lady</name>
    <total>25000</total>
    <week1>21000</week1>
    <week2>1000</week2>
    <week3>1000</week3>
    <week4>1000</week4>
    <week5>1000</week5>
    <approval>Approved</approval>
  </concept>
 </plant>

Я делаю запрос, например:

select xml from table

и результат, сохраненный в наборе данных.

Затем я загружаю свою строку XML в простой строковый объект через набор данных, что-то вроде

stringXML = dset.tables(0).rows(0)(0).tostring

и именно здесь начинаются проблемы, я знаю, как загрузить набор данных из файла XMl с помощью программы чтения строк.

Итак, мой обычный код выглядит так:

  Dim dset2 As New DataSet
  Dim reader As StringReader
  reader = New StringReader(xml) 'xml contains the xml string already loaded
  dset2.ReadXml(reader)

Когда я отлаживаю, ридер (stringReader) ничего не загружает !, у меня есть другие проекты с той же методологией программирования, и они работают отлично, но сейчас это не работает.

String reader ничего не возвращает, и если я добавлю проверку (vs 2005), то все равно, у моего var reader ничего нет.

Я что-то пропускаю? или просто устал ...

1 Ответ

0 голосов
/ 20 апреля 2011

Я не вижу, в чем именно заключается проблема, но вот пару вещей, которые вы должны проверить.

1- То, как вы получаете строку, не имеет значения ... на что важно смотреть, это значение переменной "xml" при вызове этой строки:

reader = New StringReader (xml) 'xml содержит уже загруженную строку xml

Содержит ли переменная xml ожидаемое значение?Если это не так, проверьте способ хранения и получения значения из базы данных.

2 - это stringReader, который ничего не загружает, или dset2.ReadXml, который не загружаетзагрузить ожидаемые значения?

3- Как вы определили, что «String Reader ничего не возвращает»?В вашем случае читатель - это объект, а не функция ... Он может быть нулевым (или ничего в VB), но не может ничего вернуть.Вы пробовали читатель. Читайте, чтобы узнать, что было загружено?

...