Xamarin表单使用ASMX Web服务

时间:2019-01-11 14:45:52

标签: xamarin xamarin.forms asmx

我有一个xamarin表单应用程序,我需要它来使用asmx Web服务。在Android平台中创建类以实现接口时遇到错误。

我已经按照本教程(https://www.c-sharpcorner.com/article/consuming-asmx-services-in-xamarin-forms/)来使用asmx Web服务。我有一个名为“ GetAllProjects”的Web方法,它将返回List。我不断遇到错误的代码行: “返回新列表(结果);” (请参阅下面的代码)。

错误消息:错误CS1503参数1:无法从'IMSr2.Droid.IMSWS.Project []'转换为'int'。我应该如何从Web服务返回结果?

public async Task<List<IProject>> GetAllProjects(string criteria = null)
{
    return await Task.Run(() =>
    {
        var result = service.GetAllProjects();

        return new List<IProject>(result);
        /* How should I return the result from the web service?*/
    });
}

/* This hello world is working*/
public Task<string> HelloWorld()
{
    return Task.Run(() =>
    {
        return service.HelloWorld();
    });
}

我期望得到与本教程相同的结果:https://www.c-sharpcorner.com/article/consuming-asmx-services-in-xamarin-forms/ 我需要从Web服务调用(“ GetAllProjects”)返回结果并显示在列表视图中。 感谢帮助。

1 个答案:

答案 0 :(得分:0)

如果您正确检查了错误语句,它会显示IMSr2.Droid.IMSWS.Project[]' to 'int',这显然意味着以getallprojects名称命名的Service对象的方法返回int

 service.GetAllProjects(); 

在应该返回Project []时正在返回int。

检查GetAllProjects的返回类型