2012-01-01 4 views
0

Я создал класс student с тремя свойствами, как этотИнициализация списка

public class Student 
{ 
    public int age; 
    public string name; 
    public string course; 

    public Student(int age , string name , string course) 
    { 
     this.age = age; 
     this.course = course; 
     this.name = name; 
    } 

    List<Student> school = new List<Student>(
     new Student(12,"ram","ece"));       
     ); 
} 

, что я пытаюсь сделать это, я добавляю детали студента вручную студента класса

, но я получаю это ошибка в этой строке

new Student(12,"ram","ece"));       

ошибка: не CONVER т от windowsapplication.student до systems.Collections.Generic.IEnumerable<windowsapplication.Student>

Почему это происходит?

+4

минорной ноте: те поля, а не свойства. В C# свойства имеют методы get/set. – Amy

ответ

2

Синтаксис вы использовали пытается передать новый Student конструктору List<Student> - там нет такого конструктора, следовательно, ошибка.

У вас небольшая синтаксическая ошибка. Это должно работать:

List<Student> school = new List<Student>{ 
         new Student(12,"ram","ece"));       
         }; 

Синтаксис для сбора инициализатор с {} не ().

+3

Огромное спасибо, я пробовал эту работу сейчас .... жду 7 минут, чтобы отметить ответ. – user1125105

+0

@MikeNakis - конструктор по умолчанию (без конструктора параметров) добавляется компилятором. Если вы хотите больше узнать об этом, C# in depth (2nd edition) от Jon Skeet - отличная книга. – Oded

0

Попробуйте это:

List<Student> school = new List<Student>(); 
school.add(new Student(12,"ram","ece")); 
+1

Откуда появился класс «Школа»? И вы пытаетесь добавить «Студент» в список школ. – Amy

1

List<Student> Строитель ожидает IEnumerable<Student>, не один студент. Я думаю, что вы на самом деле хотел бы использовать синтаксис списка инициализации:

List<Student> school = new List<Student>() 
{ 
    new Student(12,"ram","ece"), 
}; 
+0

много спасибо .... – user1125105

1

попробовать

List<Student> school = new List<Student>() { new Student(12,"ram","ece") }; 
+0

много спасибо ...... – user1125105

Смежные вопросы