欧美一级特黄大片做受成人-亚洲成人一区二区电影-激情熟女一区二区三区-日韩专区欧美专区国产专区

linqtoxml如何操作XML-創(chuàng)新互聯(lián)

這篇文章將為大家詳細講解有關linq to xml如何操作XML,小編覺得挺實用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。

網(wǎng)站制作、網(wǎng)站建設,成都做網(wǎng)站公司-成都創(chuàng)新互聯(lián)公司已向上1000家企業(yè)提供了,網(wǎng)站設計,網(wǎng)站制作,網(wǎng)絡營銷等服務!設計與技術結合,多年網(wǎng)站推廣經(jīng)驗,合理的價格為您打造企業(yè)品質(zhì)網(wǎng)站。

LINQ to XML提供了更方便的讀寫xml方式。前幾篇文章的評論中總有朋友提,你為啥不用linq to xml?現(xiàn)在到時候了,linq to xml出場了。

.Net中的System.Xml.Linq命名空間提供了linq to xml的支持。這個命名空間中的XDocument,XElement以及XText,XAttribute提供了讀寫xml文檔的關鍵方法。

1. 使用linq to xml寫xml:

使用XDocument的構造函數(shù)可以構造一個Xml文檔對象;使用XElement對象可以構造一個xml節(jié)點元素,使用XAttribute構造函數(shù)可以構造元素的屬性;使用XText構造函數(shù)可以構造節(jié)點內(nèi)的文本。

如下實例代碼:

class Program
{
    static void Main(string[] args)
    {           
        var xDoc = new XDocument(new XElement( "root",
            new XElement("dog",
                new XText("dog said black is a beautify color"),
                new XAttribute("color", "black")),
            new XElement("cat"),
            new XElement("pig", "pig is great")));

        //xDoc輸出xml的encoding是系統(tǒng)默認編碼,對于簡體中文操作系統(tǒng)是gb2312
        //默認是縮進格式化的xml,而無須格式化設置
        xDoc.Save(Console.Out);

        Console.Read();
    }
}

上面代碼將輸出如下Xml:

<?xml version="1.0" encoding="gb2312"?>
<root>
  <dog color="black">dog said black is a beautify color</dog>
  <cat />
  <pig>pig is great</pig>
</root>

可以看出linq to xml比XmlDocument和XmlWriter要方便很多。

2. 使用linq to xml 讀取xml

Linq是從集合中查詢對象,在linq to xml中的集合是通過XElement的Elements(),Elements(string name),以及Descendants、DescendantsAndSelf、Ancestors、AncestorsAndSelf的幾個重載方法中獲得。

獲得XElement集合之后,可以通過XElement的Attribute(string name)方法獲得元素的屬性值,可以通過XElement的Value屬性獲得節(jié)點的文本值;使用linq就可以方便的做查詢,做篩選排序了

還是上例中的xml,我們要讀取root的所有字節(jié)點,并打印出來,如下代碼:

class Program
{
    static void Main(string[] args)
    {
           
        var xDoc = new XDocument(new XElement( "root",
            new XElement("dog",
                new XText("dog said black is a beautify color"),
                new XAttribute("color", "black")),
            new XElement("cat"),
            new XElement("pig", "pig is great")));

        //xDoc輸出xml的encoding是系統(tǒng)默認編碼,對于簡體中文操作系統(tǒng)是gb2312
        //默認是縮進格式化的xml,而無須格式化設置
        xDoc.Save(Console.Out);

        Console.WriteLine();

        var query = from item in xDoc.Element( "root").Elements()
                    select new
                    {
                        TypeName    = item.Name,
                        Saying      = item.Value,
                        Color       = item.Attribute("color") == null?(string)null:item.Attribute("color").Value
                    };


        foreach (var item in query)
        {
            Console.WriteLine("{0} 's color is {1},{0} said {2}",item.TypeName,item.Color??"Unknown",item.Saying??"nothing");
        }

        Console.Read();
    }
}

3. Linq to xml簡單的應用

應用需求: 讀取博客園的rss,然后在頁面上輸出最新的10篇博客信息

實現(xiàn)要點: 通過XDocument的Load靜態(tài)方法載入Xml,通過linq查詢最新10條數(shù)據(jù)

代碼如下:

<%@ Page Language="C#" AutoEventWireup="true" %>
<script runat="server">
    protected override void OnLoad(EventArgs e)
    {
        //實際應用,通過讀取博客園的RSS生成Html代碼顯示最新的博客列表
        //使用XDocument的Load靜態(tài)方法載入Xml
        //玉開技術博客 http://www.php.cn/
        var rssXDoc = XDocument.Load("http://www.cnblogs.com/rss");

        //使用linq to xml查詢前10條新博客
        var queryBlogs = (from blog in rssXDoc.Descendants("item")
                          select new
                          {
                              Title = blog.Element("title").Value,
                              Url = blog.Element("link").Value,
                              PostTime = DateTime.Parse(blog.Element("pubDate").Value)
                          }).Take(20);
        repeaterBlogs.DataSource = queryBlogs;
        repeaterBlogs.DataBind();
        base.OnLoad(e);
    }
</script>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title>Linq to Xml 實例</title>
</head>
<body>
    <ol>
        <asp:Repeater ID="repeaterBlogs" EnableViewState="false" runat="server">
            <ItemTemplate>
                <li><span style="float: right">
                    <%#Eval("PostTime") %></span><a href="<%#Eval("Url") %>"><%#Eval("Title") %></a></li>
            </ItemTemplate>
        </asp:Repeater>
    </ol>
</body>
</html>

關于“l(fā)inq to xml如何操作XML”這篇文章就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,使各位可以學到更多知識,如果覺得文章不錯,請把它分享出去讓更多的人看到。

另外有需要云服務器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務器、裸金屬服務器、高防服務器、香港服務器、美國服務器、虛擬主機、免備案服務器”等云主機租用服務以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務可用性高、性價比高”等特點與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應用場景需求。

當前標題:linqtoxml如何操作XML-創(chuàng)新互聯(lián)
文章網(wǎng)址:http://aaarwkj.com/article24/isece.html

成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供定制網(wǎng)站、電子商務營銷型網(wǎng)站建設、微信小程序域名注冊、標簽優(yōu)化

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

成都網(wǎng)頁設計公司
亚洲精品一区二区三区三州| 亚洲黄色暴力一区视频| 日韩欧美人妻中文字幕| 在线观看免费完整观看一区二区| 国产白丝精品爽爽久久| 91人妻精品丰满少妇区| 欧美日韩一区二区三区四区高清| 国产一区二区三区在线视频播放 | 男人午夜福利视频在线观看| 欧美日本国产老熟女视频| 国产日韩精品综合一区| 超碰欧美黄色免费在线| 中文一级伦理一区二区| 精品中文人妻中文字幕| 91国产精品视频在线| 亚洲欧美日韩精品一区二| 午夜性生活视频免费看| 国产精品一区二区三区播放| 情五月激情亚洲丁香佳色| av永久免费观看网站| 久久97精品人人做人人爽| 日本黄网色三级三级三级| 亚洲国产精品自拍视频| 四虎永久播放地址免费| 在线高清中文字幕三区| 深夜福利视频一区二区| 中文字幕精品免费日韩在线| 亚洲国产精品久久久精品| 日本国内一区二区三区四区视频| 四虎在线观看免费资源| 日韩不卡在线观看免费| 高清av中文免费在线| 一区二区亚洲免费的视频| 午夜午色夜之日本福利片| av福利一区二区三区| 午夜免费福利视频一区| 少妇高潮试看二十分钟| 97在线观看免费公开| 日韩av熟女人妻一区二| 在线观看国产激情免费视频| 好看的中文字幕人妻少妇|