C# 需要Web服务帮助
我正在VS2010中使用C#,我需要一些关于web应用程序的帮助。我对web服务没有太多经验。我得到了一个Web服务的url,其中包含构建应用程序登录部分所需的方法。没有文件。我有登录件虽然工作。然后我就被卡住了。成功登录后,我需要调用另一个方法,该方法返回经过身份验证的用户有权访问的应用程序列表(或对象?)。例如,它为我自己返回的项目是157应用程序的(名称、描述、位置)。我只是想看看157个应用程序中是否有1个 我已经三天没有运气了。我已经能够将结果转储到ArrayList中,并使该列表成为GridView的源,但我不知道如何迭代结果。在这个阶段,我不包括任何代码,因为我认为我的方法不正确,我想知道你们会怎么做?是否可以将结果对象转换为xml?我感谢你的反馈和建议 更新: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中,并使该列表成为
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"