回答
你可以让你的web服务方法返回一个包含xml的字符串,但是要注意上面关于使事情更容易出错的注释。
是 - 你可以简单地声明输入和输出XmlNode
的
[WebMethod]
public XmlNode MyMethod(XmlNode input);
可以使用System.Net类,如HttpWebRequest和HttpWebResponse直接读取和写入HTTP连接。
下面是一个基本的(非临时的,未编译的,非错误检查,严重过度简化的)示例。可能不是100%正确,但至少会给你一个它是如何工作的想法:
HttpWebRequest req = (HttpWebRequest) HttpWebRequest.Create(url);
req.ContentLength = content.Length;
req.Method = "POST";
req.GetRequestStream().Write(Encoding.ASCII.GetBytes(content), 0, content.Length);
HttpWebResponse resp = (HttpWebResponse) req.getResponse();
//Read resp.GetResponseStream() and do something with it...
这种方法效果很好。 但是不管你需要做什么都可以通过继承现有的代理类并覆盖你需要具有不同行为的成员来完成。这种类型的东西最适合在没有其他选择的情况下使用,这在我的经验中并不常见。
+1感谢您的帖子。我也发布了我的实施建议。 – CRice 2010-08-17 03:21:03
对五岁答案的随机downvote?任何解释? – 2014-07-02 14:41:04
这是我刚刚根据John M Gant的例子运行的一个实现的一部分。设置内容类型请求标头很重要。另外我的请求需要凭据。
protected virtual WebRequest CreateRequest(ISoapMessage soapMessage)
{
var wr = WebRequest.Create(soapMessage.Uri);
wr.ContentType = "text/xml;charset=utf-8";
wr.ContentLength = soapMessage.ContentXml.Length;
wr.Headers.Add("SOAPAction", soapMessage.SoapAction);
wr.Credentials = soapMessage.Credentials;
wr.Method = "POST";
wr.GetRequestStream().Write(Encoding.UTF8.GetBytes(soapMessage.ContentXml), 0, soapMessage.ContentXml.Length);
return wr;
}
public interface ISoapMessage
{
string Uri { get; }
string ContentXml { get; }
string SoapAction { get; }
ICredentials Credentials { get; }
}
- 1. SOAP教程php发送和接收消息
- 2. 发送SOAP消息
- 3. 发送和接收自己的消息
- 4. 消息队列发送和接收
- 5. 增强asio发送和接收消息
- 6. 发送和接收Windows消息
- 7. 在两端发送和接收消息
- 8. 无法发送和接收XMPP消息
- 9. Android接收和发送消息
- 10. 连接消息接收和消息发送脚本
- 11. 我该如何发送/接收SOAP消息.NET
- 12. 用Java创建和发送SOAP消息
- 13. 发送和接收信息
- 14. 接收并发送SOAP
- 15. Axis使用HTTP 1.0发送SOAP消息并接收HTTP 1.1 soap调用
- 16. 如何以属性名称/值格式发送和接收soap消息?
- 17. Lidgren不发送/接收数据消息
- 18. 广播接收器发送的消息
- 19. Sockets.io接收但不发送消息
- 20. WCF - 检查发送/接收的消息?
- 21. 在发送端口接收OSC消息
- 22. Apache的骆驼发送消息JMS消费者接收消息
- 23. 发送消息或收到消息?
- 24. 消息发送,接收方没有收到消息。套接字编程
- 25. 在Java中发送和接收套接字消息
- 26. php mysql连接发送和接收消息
- 27. 接收并处理SOAP消息
- 28. 对象用于发送消息或接收消息?
- 29. 如何在gcm和openfire之间发送和接收消息?
- 30. 用PHP发送一条SOAP消息
你真的需要SOAP吗,还是你只想来回发送XML? – 2009-12-07 21:34:58