Web服务传递参数类

时间:2014-02-25 03:26:13

标签: c# web-services parameters

您好我有一个具有参数类

的Web服务
    [WebMethod]
    public int Customers(Customer _customers)
    {

        Customer getCustomer = new Customer();
        getCustomer.ID = _customers.ID;
        getCustomer.FirstName = _customers.FirstName;
        getCustomer.LastName = _customers.LastName;

        return 0;
    }

现在我有一个C#控制台应用程序调用webservice

        ServiceReference1.WebService1SoapClient _client = new WebService1SoapClient();

        Customer _customers = new Customer();
        _customers.ID = 1;
        _customers.FirstName = "FirstName";
        _customers.LastName = "LAstName";

        _client.Customers(_customers);

一个_client.Customers(_customers);我有错误

  

“无法从'客户'转换为'WRTC_BACKUPDB.ServiceReference1.Customer'”

1 个答案:

答案 0 :(得分:3)

您似乎在客户端有2个Customer

更改

Customer _customers = new Customer();

var _customers = new WRTC_BACKUPDB.ServiceReference1.Customer();

应该解决这个问题,尽管你还应该确定其他Customer类的来源。

可能是控制台客户端在添加Customer时都有向导创建的代理Service Reference类,并且它还直接引用服务器上使用的原始Customer类部件。如果您希望在客户端和服务器之间共享同一个类,则可以选择在“服务引用”向导中重用类型。

(同样从命名约定的角度来看,我也会将变量名称更改为_customer