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

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)頁設計公司
午夜视频在线观看区一| 欧美丰满熟妇视频在线| 日本少妇一区二区99| 欧美精品国产精品久久| 国产麻豆91在线视频| 国产b片免费在线观看| 欧美日韩一区二区三区色| 内射嫩国产欧美国产日韩欧美| 欧美亚洲另类国产精品| av 一区二区三区av| 91麻豆精品一二三区在线| 很黄很刺激的视频中文字幕 | 亚洲最大av在线精品国产| 亚洲黄色大片在线免费观看| 日日干天天日夜夜操| 婷婷丁香六月激情综合| 国产91日韩欧美在线| 亚洲欧洲一区二区中文字幕| jvid视频在线观看免费| 蜜臀人妻久久一区二区三| 色男人天堂亚洲男人天堂| 无码精品人妻一区二区三区中| 色噜噜男人的天堂av| 亚洲美女毛茸茸的逼逼| 午夜福利院在线观看免费| 日韩一区二区三区av| 中文字幕二区三区人妻| 国产精品久久护士96| 91麻豆精品一区二区三区| 日韩人妻中文字幕专区| 三欲一区二区三区中文字幕| 欧美日韩精品一区二区在线播放| 成人在线观看av毛片| 丰满人妻侵犯中文字幕| 亚洲国产精品第一区第二区| 欧美黄色免费电影网站| 日韩在线不卡av一区二区| 国产av剧情极品丝袜美女| 国产三级无遮挡在线观看| 亚洲精品隔壁傲慢人妻| 国产特级黄片免费观看|