使用.NET类编写SOAP协议调用Web服务

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

使用.NET类编写SOAP协议调用Web服务

简介:使用.NET类编写SOAP消息,SOAP消息中包含用户的用户帐号,用户密码和帐号ID。使用HttpWebRequest类发送SOAP请求,请求远程服务器上Web服务程序(客户帐户信息),并使用HttpWebResponse类获取服务响应。

知识点:

命名空间:System.Xml

创建XML文档的类:XmlTextWriter

1.创建XmlTextWriter 对象,设置用Tab键缩进

代码示例:

XmlTextWriter BookWriter = new XmlTextWriter( @"\catalog\books.xml", Encoding.UTF8);

BookWriter.Formatting = Formatting.Indented;

2.编写XML文档的根元素

使用WriteStartDocument()方法和WriteEndDocument()方法创建XML声明

使用WriteStartElement()方法和WriteEndElement()方法创建根元素

代码示例:

BookWriter.WriteStartDocument();

BookWriter.WriteStartElement("books");

// 其他元素

BookWriter.WriteEndElement();

BookWriter.WriteEndDocument();

输出:

3.编写元素

使用WriteElementString()方法创建不包含子元素和属性的元素

代码示例:

BookWriter.WriteElementString("price", "19.95");

输出:

19.95

使用WriteStartElement()和WriteEndElement() 方法创建含有下级子元素和属性的元素

代码示例:

BookWriter.WriteStartElement("book");

BookWriter.WriteElementString("price", "19.95");

BookWriter.WriteEndElement();

输出:

19.95

4.编写属性

代码示例:

BookWriter.WriteStartElement("book");

BookWriter.WriteAttributeString("price", "19.95");

BookWriter.WriteEndElement();

输出:

5.编写带有命名空间的元素

使用WriteElementString()方法或WriteStartElement()方法编写带命名空间的元素

代码示例:

BookWriter.WriteStartElement("hr", "Name", "http://hrweb");

BookWriter.WriteString("Nancy Davolio");

BookWriter.WriteEndElement();

输出:

Nancy Davolio

6.编写带有命名空间的属性

使用WriteAttributeString()方法为元素添加带命名空间的属性

public void WriteAttributeString (

string prefix,

string localName,

string ns,

string value

)

参数

prefix:属性的命名空间前缀。

localName:属性的本地名称。

ns:属性的命名空间URI。

value:属性值。

此方法写出具有用户定义的命名空间前缀的属性,并将其与给定的命名空间进行关联。如果前缀为“xmlns”,则此方法也将此当做命名空间声明对待,并将声明的前缀与给定属性值中提供的命名空间URI 进行关联。在这种情况下,ns参数可以为空引用。

代码示例:

xtw.WriteStartElement("bookstore");

// Write the namespace declaration

xtw.WriteAttributeString( "xmlns", "bk", null, "urn:samples");

xtw.WriteStartElement("book");

// Lookup the prefix and then write the ISBN attribute.

string prefix = xtw.LookupPrefix("urn:samples");

xtw.WriteStartAttribute(prefix, "ISBN", "urn:samples");

xtw.WriteString("1-861003-78");

xtw.WriteEndAttribute();

// Write the style element

xtw.WriteStartElement(prefix, "style", "urn:samples");

xtw.WriteString("hardcover");

xtw.WriteEndElement();

// Write the end tag for the book and root elements

xtw.WriteEndElement();

xtw.WriteEndElement();

输出:

hardcover

任务:演示——使用.NET类构架SOAP协议调用Web服务

第1步:建立BulidSOAPMessage类,添加静态方法SOAPMessage构建SOAP消息。

相关文档
最新文档