Windows Phone中nussoap的问题
本文关键字:问题 nussoap Phone Windows | 更新日期: 2023-09-27 18:08:53
我在使用nussoap和Windows Phone时遇到了一些问题,希望您能帮助我。但首先让我解释一下我做了什么:
首先我创建了一个webservice
<?php
require_once('./lib_095/nusoap.php');
$server = new soap_server();
$server->configureWSDL('test_wsdl', 'urn:test_wsdl');
$server->wsdl->schemaTargetNamespace = 'urn:test_wsdl';
$server->register('test', // method name
array('var' => 'xsd:string'), // input parameters
array('return' => 'xsd:string'), // output parameters
'urn:test_wsdl', // namespace
'urn:test_wsdl#test', // soapaction
'rpc', // style
'literal', // use
'Test-Methode des Webservices' // documentation
);
function test($var)
{
return "test fine: $var";
}
// Use the request to (try to) invoke the service
$HTTP_RAW_POST_DATA = isset($HTTP_RAW_POST_DATA) ? $HTTP_RAW_POST_DATA : '';
$server->service($HTTP_RAW_POST_DATA);
?>
对于我的第一个测试,我在visual studio 2013中编写了一个控制台应用程序:
ServiceReference1.test_servicePortTypeClient c = new ServiceReference1.test_servicePortTypeClient();
string check = "Milburn";
var result = c.test("Hallo");
Console.WriteLine(result);
这个小程序运行良好。所以我想我可以把这种体验转移到Windows Phone上——用同样的代码。但这行不通。我甚至试过这样的代码:
ServiceReference1.test_servicePortTypeClient c = new ServiceReference1.test_servicePortTypeClient();
string check = "Milburn";
var result = c.testAsync(check);
System.Diagnostics.Debug.WriteLine("Hallo"+result);
结果程序返回一个任务。我怎么做才能得到一个字符串呢?
谢谢你的帮助
生成的服务在Windows Phone上使用async方法(您的测试更改为testAsync),所以您需要等待它们
var result = await c.testAsync(check);