一個通過DataSet操作XML的類

來源:互聯網
上載者:User
xml 這段時間寫的項目每次都要用到XML儲存一些配置,而每次操作XML都覺得挺麻煩,沒有資料庫那麼順手。後來發現用DataSet操作XML很方便,而且靈活性比較好,於是寫了一個操作XML的類,用來應付一般的XML操作(源碼下載附件)。

  1 基本思路
  其實用DataSet操作XML,歸根到底就是對DataSet裡的表格,行,列等進行操作,然後用DataSet裡的東西重新寫到XML中,從而實現編輯XML的目的。如果再配合上.xsd檔案的話,那效果更佳。

  2 程式詳解
  (1) XML檔案內容
  本類操作的XML和產生的XML格式是一樣的,如下(點擊查看代碼1附件):(如出現中文亂碼,請在瀏覽器查看選項的編碼中選擇"簡體中文")

  然後點擊XML檔案右下角的“資料”,即可看到熟悉的表格形式,在表格的任意位置上單擊右鍵選擇“建立架構”,將會產生一個.xsd檔案,該檔案用來定義XML各列的類型。其內容如下(點擊查看代碼2附件):

  注意:如果想像資料庫一樣有一個自動成長的ID欄位,則可以這樣操作:
  首先在XML中添加一個元素,這樣產生.xsd的時候,就會有一個ID段,在.xsd中選中ID這一列,在右邊的屬性中,將“AutoIncrementSeed”和“AutoIncrementStep”分別設定為1,這樣ID就會從1開始以步長為1自動成長。

  以上代碼如果看不懂並不要緊,因為我們可以通過DataSet來產生這種格式的內容。接下來將開始操作XML。

  (2) 處理XML檔案路徑
  這裡主要是對傳入的XML路徑進行處理,如果傳入的是相對路徑,則返回完整路徑,如果傳入的是完整路徑,則不做處理直接返回。方法如下:

#region GetXmlFullPath
/// <summary>
/// 返回完整路徑
/// </summary>
/// <param name="strPath">Xml的路徑</param>
/// <returns></returns>
public static string GetXmlFullPath(string strPath)
{
//如果路徑中含有:符號,則認定為傳入的是完整路徑
if(strPath.IndexOf(":") > 0)
{
return strPath;
}
else
{
//返回完整路徑
return System.Web.HttpContext.Current.Server.MapPath(strPath);
}
}
#endregion



相關文章

E-Commerce Solutions

Leverage the same tools powering the Alibaba Ecosystem

Learn more >

Apsara Conference 2019

The Rise of Data Intelligence, September 25th - 27th, Hangzhou, China

Learn more >

Alibaba Cloud Free Trial

Learn and experience the power of Alibaba Cloud with a free trial worth $300-1200 USD

Learn more >

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。