Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/31.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 需要Web服务帮助_C#_Asp.net_Visual Studio 2010_Web Services - Fatal编程技术网

C# 需要Web服务帮助

C# 需要Web服务帮助,c#,asp.net,visual-studio-2010,web-services,C#,Asp.net,Visual Studio 2010,Web Services,我正在VS2010中使用C#,我需要一些关于web应用程序的帮助。我对web服务没有太多经验。我得到了一个Web服务的url,其中包含构建应用程序登录部分所需的方法。没有文件。我有登录件虽然工作。然后我就被卡住了。成功登录后,我需要调用另一个方法,该方法返回经过身份验证的用户有权访问的应用程序列表(或对象?)。例如,它为我自己返回的项目是157应用程序的(名称、描述、位置)。我只是想看看157个应用程序中是否有1个 我已经三天没有运气了。我已经能够将结果转储到ArrayList中,并使该列表成为

我正在VS2010中使用C#,我需要一些关于web应用程序的帮助。我对web服务没有太多经验。我得到了一个Web服务的url,其中包含构建应用程序登录部分所需的方法。没有文件。我有登录件虽然工作。然后我就被卡住了。成功登录后,我需要调用另一个方法,该方法返回经过身份验证的用户有权访问的应用程序列表(或对象?)。例如,它为我自己返回的项目是157应用程序的(名称、描述、位置)。我只是想看看157个应用程序中是否有1个

我已经三天没有运气了。我已经能够将结果转储到ArrayList中,并使该列表成为GridView的源,但我不知道如何迭代结果。在这个阶段,我不包括任何代码,因为我认为我的方法不正确,我想知道你们会怎么做?是否可以将结果对象转换为xml?我感谢你的反馈和建议

更新:

protected void Button_Click(object sender, EventArgs e)
    {
        ServiceReference1.Identity usr = new ServiceReference1.Identity();
        loginService.AuthenticationService auth = new loginService.AuthenticationService();
        loginService.AuthenticationService auth = new loginService.AuthenticationService();
        auth.Login(TextBox1.Text, TextBox2.Text, "10.*.*.*");
        List<object> roles = new List<object>(auth.GetIdentityRoles(TextBox1.Text));
        IEnumerable myEnum = roles;
        IEnumerator myEnumerator = myEnum.GetEnumerator(); //Getting the Enumerator
        myEnumerator.Reset(); //Position at the Beginning
        while (myEnumerator.MoveNext()) //Till not finished do print
        {
            Response.Write(myEnumerator.Current.ToString());
        }
    }

首先,您是否通过首先设置服务引用来创建适当的客户端代理类

使用Visual Studio添加服务引用,方法是在项目的解决方案资源管理器中的“引用”节点上单击鼠标右键,然后选择“添加服务引用”。您可以按如下方式输入url:

VisualStudio使用服务返回的WSDL文档创建代理类。 然后,您可以检查这个类以查看所有的方法、它们的签名和类型


几乎所有Web服务都配置为返回此WSDL XML文档。

尝试使用foreach关键字迭代ArrayList以检查其中的内容?即使您的方法不正确,这里的人也可以调整您的方法以使其工作,或者至少指出您的方法不工作的原因。此外,摆脱使用
ArrayList
的习惯。如果您需要任意类型的列表,请使用
List
。我今天将研究列表方法并发布我的想法。这实际上是我尝试的第一件事,但又一次,我不知道如何处理每个列表项中的3项。继续阅读更多教程。谢谢是的,我以前使用过web引用,但只是在教程中,我创建了服务作为解决方案示例的一部分。我调用的方法是
[+] roles = Count = 20
[+] {loginService.Role}
    Name = "Administrator"
    nameField = "Administrator"