使用C#,我需要从某个URL中获取一些数据,然后生成一个非常基本的.html文件,显示可用的大学课程列表。 URL的响应是XML,看起来像这样
<ArrayOfCourse xmlns="http://schemas.datacontract.org/2004/07/Demo.Samples">
<Course>
<codeField>String content</codeField>
<semesterField>String content</semesterField>
<titleField>String content</titleField>
</Course>
...
</ArrayOfCourse>
我已经被告知我应该使用像XDocument和XmlTextWriter这样的类来生成所需的html。
<?xml version="1.0" encoding="utf-8"?>
<!--courses-->
<html>
<head>
<title>courses</title>
</head>
<body>
<h1>courses</h1>
<p>COMPSCI 101: <b>Principles of Programming</b><br />Summer School; Semester 1; Semester 2</p>
...
...
</body>
我的问题是,你是怎么做的?更具体地说,使用什么方法从响应中获取每个标记?有人可以给我任何有用的参考资料吗?我自己看了看,但似乎找不到任何有用的东西。
答案 0 :(得分:0)
XDocument xml = XDocument.Load(filename);
var q = from b in xml.Descendants("product")
select new
{
name = (string)b.Element("name"),
price = (double?)b.Element("price"),
extra = (string)b.Element("extra1"),
deeplink = (string)b.Element("deepLink")
};
或
XDocument doc = XDocument.Load("test.xml");
XNamespace ns = "http://ns.adobe.com/xfdf/";
foreach (XElement element in doc.Root
.Element(ns + "fields")
.Elements(ns + "field"))
{
Console.WriteLine("Name: {0}; Value: {1}",
(string) element.Attribute("name"),
(string) element.Element(ns + "value"));
}