在.Net1.2中对Xquery的支持

王朝c#·作者佚名  2006-01-09
窄屏简体版  字體: |||超大  

在.Net1.2中支持Xquery,Xquery使用一种叫FLWOR的查询语言(音Flower).例子如下:

using System;

using System.IO;

using System.Xml;

using System.Xml.Query;

using System.Data.SqlXml;

namespace XQuery{

public class XQuerySample{

public static void Main(string[] args) {

System.Xml.XmlDataSourceResolver ds = new System.Xml.XmlDataSourceResolver ();

ds.Add("bookstore","books.xml");

StreamWriter writer=new StreamWriter("output.xml");

string query=@"<bookstore> {

for $b in document('bookstore')/bookstore/book

where $b/@genre='philosophy' and $b/@publicationdate='1991'

return $b/title

}

</bookstore>";

XQueryProcessor xp = new XQueryProcessor ();

xp.Compile(query);

xp.Execute(ds, writer);

writer.Close();

}

}

}

books.xml

<?xml version="1.0" encoding="utf-8"?>

<!-- This file represents a fragment of a bookstore database -->

<bookstore>

<book genre="autobiography" publicationdate="1981" ISBN="1-861-11-0">

<title>The Autobiography of Benjamin Franklin</title>

<author>

<first-name>Benjamin</first-name>

<last-name>Franklin</last-name>

</author>

<price>8.99</price>

</book>

<book genre="novel" publicationdate="1967" ISBN="0-201-63361-2">

<title>The Confidence Man</title>

<author>

<first-name>Herman</first-name>

<last-name>Melville</last-name>

</author>

<price>11.99</price>

</book>

<book genre="philosophy" publicationdate="1991" ISBN="1-861001-57-6">

<title>The Gorgias</title>

<author>

<name>Plato</name>

</author>

<price>9.99</price>

</book>

</bookstore>

output.xml

<?xml version="1.0" encoding="utf-8"?>

<bookstore>

<title>The Gorgias</title>

</bookstore>

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航