ASP.NET Web服务
|
我可能会从错误的方向出发。我是.net Web服务的新手,正在寻求一点帮助。
我有一个在线定位的网络服务,我想将结果绑定到列表框或数据视图,但也无法。
我已经创建了一个名为net.webservicex.www的Web代理,该代理指向以下位置的Web服务。http://www.webservicex.net/geoipservice.asmx
这是我的C#代码。
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
namespace web_services
{
public partial class WebForm1 : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
}
protected void Button1_Click(object sender, EventArgs e)
{
net.webservicex.www.GeoIPService myProxy = new net.webservicex.www.GeoIPService(); // proxy object
string ipAddress, result;
ipAddress = txtIpAddress.Text;
result = myProxy.GetGeoIP(\"64.106.166.130\");
lstResults.DataSource = result;
lstResults.DataMember = \"IP\";
}
}
}
我收到的错误是错误
无法在第24行将类型\'web_services.net.webservicex.www.GeoIP \'隐式转换为\'string \'
如果有人可以给我一些提示或想法,那将很棒。
谢谢!
保罗
没有找到相关结果
已邀请:
6 个回复
桔适丛
由于您的Web服务返回的对象不可枚举,因此可以通过将其放入可枚举的类型来欺骗它:
暑袜眠退
物崎巩
该方法返回的对象不是字符串,而是4。 您已将“ 5”声明为不匹配的字符串。
类上可能有
方法。如果是这样,您可以将代码更改为:
根据“ 5”的样子,您也许可以将其作为数据源。
厘恼轨
所以很明显(是的,对……吐血后……大声笑),结果不可能是简单的STRING类型。 因此,从上述解决方案中抽取样本,我做到了: Default.aspx.cs:
其中-\“ mygeoip \”是我的Web服务名称(而不是\“ net.webservicex.www \”) GeoIPService是我的命名空间。 Default.aspx:
就是这样-我希望我已经对像我这样的初学者有所帮助:)
完趣镐
埃庐