使用web客户端与web参考c#的优缺点
本文关键字:web 优缺点 客户端 使用 参考 | 更新日期: 2023-09-27 18:18:05
我已经使用简单的webclient对象将12个以上的web服务集成到我的应用程序中。
我没有添加任何web参考,只是使用WebClient。UploadData(url, byte[] data).
我的请求如下所示。这是标准的方法吗?
XDocument doc= new XDocument(
new XDocument(
new XDeclaration("1.0", "utf-8", String.Empty),
new XElement(soapenv + "Envelope",
new XAttribute(XNamespace.Xmlns + "soapenv", soapenv), new XAttribute(XNamespace.Xmlns + "get", get),
new XElement(soapenv + "Header"),
new XElement(soapenv + "Body",
new XElement(get + "GetRate",
new XElement("rtRequest",
new XElement(get + "account" + accountValue)
string xstring = doc.ToString();
byte[] Data = Encoding.UTF8.GetBytes(xstring);
response = client.UploadData(RatingUrl, Data);
如果它是一个常规的SOAP服务,那么不,这不是首选的方法。使用web引用,它将基于WSDL为您生成代理类。它将更容易,更不容易出错,更易于维护。
不,它不是标准方法。
在。net世界中,Windows Communication Foundation是与SOAP服务交互的推荐框架。它封装了所有的传输和消息格式,因此您不必手工编写它(如示例所示)。
使用Add Service Reference为你的服务生成合适的代理类。
这是一篇概览WCF的介绍性文章。