2011-04-19 28 views
1

我有一個MySQL數據庫中的表,我已經存儲了很多XML字符串。 的XML字符串是這樣的:StringReader不「讀」給定的字符串對象

<?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)不加載的事情!我有相同的編程方法等項目和完美的工作,但現在,它不起作用。

字符串閱讀器什麼都不返回,如果我添加一個檢查(vs 2005),它是一樣的,我的var閱讀器什麼也沒有。

我在跳繩嗎?或只是累...

回答

0

我看不出什麼確切的問題,但這裏有幾件事你應該檢查。

1 - 你得到的字符串不要緊的方式...什麼是重要的看,這是「XML」變量的值,當你調用執行該行:

讀者=新的StringReader(xml)'xml包含已加載的xml字符串

xml變量是否包含預期值?如果不存在,請檢查您存儲的方式並從數據庫中檢索值。

2是不加載事物的stringReader,還是不加載期望值的dset2.ReadXml?

3-您是如何確定「String reader return nothing」?在你的情況下,reader是一個對象,而不是一個函數......它可以是null(或者VB中沒有),但是它不能返回任何東西。你有沒有嘗試reader.ReadToEnd來找出什麼是加載?

相關問題