XMLを回し1.DataTable
DataTableToXml #region /// <要約> /// XML文字列にオブジェクトを変換するのDataTable /// </要約> /// <PARAM NAME = "DS"> DataSetオブジェクト</ param>の /// <戻り値> XML文字列</戻り値> パブリック静的文字列DataTableToXml(DataTableのDT、文字列SNAME) { IF(DT = nullを!) { MemoryStreamをミリ秒= NULL; てXmlTextWriter XmlWt = NULL; 試み { MS =のMemoryStream新新(); // MS XmlWtの例 XmlWtてXmlTextWriter新しい新=(MS、System.Text.Encoding.Unicode)。 //データDSを取得 dt.TableName = Sql.IsEmptyString(SNAME)?"dt2xml":SNAME。 dt.WriteXml(XmlWt、XmlWriteMode.WriteSchema)。 int型のカウント=(int型)ms.Length。 バイト[] TEMP =新しいバイト[カウント]。 ms.Seek(0、SeekOrigin.Begin)。 ms.Read(温度、0、カウント); //返回ユニコード编码的文本 System.Text.UnicodeEncodingのucode =新しいSystem.Text.UnicodeEncoding(); ストリングのreturnValue = ucode.GetString(TEMP).Trim(); returnValueを返します。 } キャッチ(のSystem.ExceptionのEX) { EXを投げます。 } 最後に { //释放资源 場合(!XmlWt = NULL) { XmlWt.Close()。 ms.Close(); ms.Dispose(); } } } 他 { ""を返します。 } } #endregion
DataSetを回し2.XML
データセットに#region XMLの パブリック静的データセットXmlToDataSet(列xmlString) { 常にXmlDocument XMLDOC =新規のXmlDocument()。 xmldoc.LoadXml(xmlString)。 StringReaderストリーム= NULL; XmlTextReaderはリーダ= NULL; 試す { DataSetのxmlDS =新しいデータセット(); ストリーム=新しいにStringReader(xmldoc.InnerXml)。 リーダー=新しいXmlTextReaderは(ストリーム)。 xmlDS.ReadXml(リーダー)。 reader.Close(); xmlDSを返します。 } キャッチ(のSystem.ExceptionのEX) { reader.Close(); EXを投げます。 } } #endregion