2010-08-18 78 views
1

我已经在Google中搜索了很多。 我在客户端创建了一个EntityClass,然后我在Web Service端添加了这个类的库引用。但是,当我要调用该方法,它显示了这个错误:如何将对象传递给Web服务?

Error 2 Argument 1: cannot convert from 'Services_Library.UserService.UserServiceSoapClient' to 'Services_Library.UserService.UserEntity'

这里是代码,这种方法是从用户界面称为:

public UserEntity test(UserEntity userEntityx) 
    { 
     UserService.UserServiceSoapClient userService = new UserService.UserServiceSoapClient(); 
     userService.testUserAsync(new UserEntity()); 
    } 

我认为我们可以做到这一点不明确序列化,对吧?如果是这样,我更喜欢这种方式。

+0

您使用.asmx或wcf服务吗? – Mark 2010-08-18 17:34:12

回答

1

我认为问题在于当你实际调用服务时,你传递的是serviceReference而不是该调用接受的对象。我认为它应该看起来像这样:

public UserEntity test(UserEntity userEntityX) 
{ 
    var userService = new UserService.UserServiceSoapClient(); 
    return userService.testUser(userEntityX); 
} 

没有明确的序列化需要。

另外,请记住,如果您调用该方法的异步版本,则代码将变得更加复杂。我在我的例子中使用了同步版本。

+0

你们,我知道那个异步。 对不起,我的真实代码是这样的,仍然不起作用: public UserEntity test(UserEntity userEntityx) UserService.UserServiceSoapClient userService = new UserService.UserServiceSoapClient(); userService.testUserAsync(new UserEntity()); } – Alan 2010-08-18 17:42:41

+0

如果是这样的话,那么你得到的编译错误没有任何意义。你确定这是你的确切/完整的代码吗? – 2010-08-18 17:48:11

+0

啊男人,这不作SENCE给我=/ 正如我所说,这只是代码生成错误: 公共UserEntity测试(UserEntity userEntityx) {UserService.UserServiceSoapClient userService =新UserService.UserServiceSoapClient(); userService.testUserAsync(new UserEntity()); } – Alan 2010-08-18 19:04:12

相关问题