最简单的C#客户端,无需使用“添加服务引用”即可调用包含简单类型的ASP.Net Web服务

时间:2012-03-09 09:05:46

标签: c# asp.net web-services

使用仅使用简单类型的C#客户端调用 ASP / Net Web服务的最简单方法是什么?这里很容易就意味着:

  • 最少量的代码(包括任何生成的代码)
  • 最少的依赖项

假设该服务公开的Web方法与此有关:

string SendSomething(string xml);
int GetNumber();

3 个答案:

答案 0 :(得分:2)

可能这不是您正在寻找的答案,但肯定值得一试,您可以尝试使用jQuery AJAX异步调用您的web方法,它不需要您添加任何服务引用。此外,由于您使用的是简单类型,因此调用会更容易。但是,您必须谨慎地为您的服务实施正确的安全性。如果你想尝试它,这值得一看:Encosia。这个网站就是我上面所说的。

干杯

答案 1 :(得分:1)

Asp.Net Webservice中的WebMethod生成SOAP响应。

因此,除非您想再次编写SOAP协议,否则最简单的方法是简单地使用Web / Service引用。

对于较轻的东西,它必须从更改服务开始。您可以使用“WCF dataservices”方法来创建JSON服务。

答案 2 :(得分:0)

在某种程度上,服务的消耗还取决于您如何实现服务。您的需求正是我们需要更多支持REST的Web服务的原因。

以防您的服务是否使用WCF启用REST。你可以试试这个 http://praveenlearns.wordpress.com/2012/02/14/consuming-wcf-rest-service/

它显示了如何使用GET / POST http动词来使用REST服务。

@Amn已经建议您可以使用$(jquery).ajax方法从javascript调用Web服务,而无需添加任何Web服务引用。