how to adjust “is a type but is used like a variable”?

后端 未结 4 908
有刺的猬
有刺的猬 2020-12-06 11:07

I\'m trying to generate some code in a web service. But it\'s returning 2 errors:

1) List is a type but is used like a variable

2) No overload for method \

相关标签:
4条回答
  • 2020-12-06 11:37

    The problem is at the line

    List<Customer> li = List<Customer>();
    

    you need to add "new"

    List<Customer> li = new List<Customer>();
    

    Additionally for the next line should be:

    li.Add(new Customer{Name="yusuf", SurName="karatoprak", Number="123456"});
    

    EDIT: If you are using VS2005, then you have to create a new constructor that takes the 3 parameters.

    public Customer(string name, string surname, string number)
    {
         this.name = name;
         this.surname = surname;
         this.number = number;
    }
    
    0 讨论(0)
  • 2020-12-06 11:50

    To answer your second question:

    You either need to create a constructor that takes the three arguments:

    public Customer(string a_name, string a_surname, string a_number)
    {
         Name = a_name;
         SurName = a_surname;
         Number = a_number;
    }
    

    or set the values after the object has been created:

    Customer customer = new Customer();
    customer.Name = "yusuf";
    customer.SurName = "karatoprak";
    customer.Number = "123456";
    li.Add(customer);
    
    0 讨论(0)
  • 2020-12-06 11:52

    This

    List<Customer> li = List<Customer>();
    

    needs to be:

    List<Customer> li = new List<Customer>();
    

    and you need to create a Customer constructor which takes the 3 arguments you want to pass. The default Customer constructor takes no arguments.

    0 讨论(0)
  • 2020-12-06 11:54

    As all the properties in the Customer class has public setters, you don't absolutely have to create a constructor (as most have suggested). You also have the alternative to use the default parameterless constructor and set the properties of the object:

    Customer c = new Customer();
    c.Name = "yusuf";
    c.SurName = "karatoprak";
    c.Number = "123456";
    li.Add(c);
    
    0 讨论(0)
提交回复
热议问题