如何调用未在.NET中开发的Web服务

Lui*_*cia 1 c# web-services windows-runtime

在过去,我有过调用WCF服务或ASMX服务的经验,你只需要添加.svc或.asmx url的服务引用,它就会为你生成代理,然后你就可以通过intellisense来调用这些方法.

非.net网络服务是否相同?

我需要称之为 http://www.earthtools.org/webservices.htm

来自winrt应用程序中的c#代码,但我不知道如何

Dam*_*ith 7

如果您有WSDL,那么您可以添加对该服务的引用.但在这里你试着调用REST服务.

您需要发送帖子请求并将响应发送为:

private const string BASE_URL = "http://www.earthtools.org/timezone";
private const string REQUEST_URL_FORMAT = "{0}/{1}/{2}";

public timezone GetTimeZone(double latitude, double longitude)
{
    var uriString = String.Format(REQUEST_URL_FORMAT, BASE_URL, latitude, longitude);
    var requestUri = new Uri(uriString);

    var request = WebRequest.Create(requestUri);
    using (var response = request.GetResponse())
    {
        using (var responseStream = response.GetResponseStream())
        {
            var ser = new XmlSerializer(typeof (timezone));
            var result = (timezone) ser.Deserialize(responseStream);
            return result;
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

这里的例子.