后台解析XML为DataTable

 

Private Function GetUserDTFromOA() As DataTable
        Dim strUserInfoXML As String = GetUserInfoXML()
        Dim xmlDom As New XmlDocument
        Dim rowNodes As XmlNodeList
        Dim i As Int16
        Dim dtUserFromOA As DataTable = New DataTable()
        dtUserFromOA.Columns.Add("UserCode", Type.GetType("System.String"))
        dtUserFromOA.Columns.Add("UserName", Type.GetType("System.String"))
        dtUserFromOA.Columns.Add("MobilePhone", Type.GetType("System.String"))
        dtUserFromOA.Columns.Add("UserGUID", Type.GetType("System.String"))
        dtUserFromOA.Columns.Add("rowid", Type.GetType("System.Int16"))

        xmlDom.LoadXml(strUserInfoXML)
        rowNodes = xmlDom.SelectNodes("accounts/account")
        If rowNodes.Count > 0 Then
            For i = 0 To rowNodes.Count - 1
                Dim dr As DataRow = dtUserFromOA.NewRow
                dr(0) = rowNodes(i).InnerText
                dr(1) = rowNodes(i).Attributes("username").Value
                dr(2) = rowNodes(i).Attributes("unit").Value
                dr(3) = MyDB.GetDataItemString("select ISNULL(UserGUID,'') from myUser where UserCode= '" & rowNodes(i).InnerText & "'")
                dr(4) = i + 1
                dtUserFromOA.Rows.Add(dr)
            Next
        End If

        Return dtUserFromOA
    End Function


    Private Function GetUserInfoXML() As String
        Dim strUserInfoXML As StringBuilder = New StringBuilder("")
        strUserInfoXML.Append("<accounts>")
        strUserInfoXML.Append("<account username='username1' unit='mobile1' >useraccount1</account>")
        strUserInfoXML.Append("<account username='username2' unit='mobile2' >useraccount2</account>")
        strUserInfoXML.Append("<account username='username3' unit='mobile3' >useraccount3</account>")
        strUserInfoXML.Append("<account username='username4' unit='mobile4' >useraccount4</account>")
        strUserInfoXML.Append("<account username='username5' unit='mobile5' >useraccount5</account>")
        strUserInfoXML.Append("<account username='username6' unit='mobile6' >useraccount6</account>")
        strUserInfoXML.Append("</accounts>")

        Return strUserInfoXML.ToString()
    End Function

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值