我得到了一个 XSD 文件和示例 XML 文件,并要求我将 XML 文件发布到一个 URL。
示例 XML 文件
<?xml version="1.0"?>
<pingRequest>
<elt></elt>
...
</pingRequest>
我熟悉 SOAP 和 REST,但我从来没有直接发布过纯 XML 文件。这是我到目前为止得到的。
1) 从 XSD 文件生成 C# 类
xsd.exe Test.xsd /c
2) 使用 XmlSerializer 从 C# 类序列化为 XML
public string SerializeObject(object obj, Type type)
{
string xml;
var xs = new XmlSerializer(type);
using (var ms = new MemoryStream())
{
xs.Serialize(ms, obj, null);
ms.Position = 0;
using (var sr = new StreamReader(memoryStream))
{
xml = sr.ReadToEnd();
}
}
return xml;
}
或者我应该使用LINQ to XML生成 XML 文件吗?
3) 使用 WebClient 将 XML 发布到 URL
var client = new WebClient();
var uri = new Uri("http://www.site.com/");
string responseXML = client.UploadString(uri, requestXML);
我在正确的轨道上吗?如果没有,请您指出正确的方向吗?提前致谢。