2017-01-15 3 views
0

Получение ошибки при создании списка деталей. Ошибка возникает на parts.add. Он говорит: «Поле инициализатор не может ссылаться на нестатическое поле, метод или свойства»Инициализатор поля не может ссылаться на нестатическое поле, метод или свойство - при создании списка

Списка части = новый список() {

// Add parts to the list. 
    parts.Add(new Part() { PartName = "crank arm", PartId = 1234}); 
    parts.Add(new Part() { PartName = "chain ring", PartId = 1334 }); 
    parts.Add(new Part() { PartName = "regular seat", PartId = 1434 }); 
    parts.Add(new Part() { PartName = "banana seat", PartId = 1444 }); 
    parts.Add(new Part() { PartName = "cassette", PartId = 1534 }); 
    parts.Add(new Part() { PartName = "shift lever", PartId = 1634 }); 
    } 

public class Part 
{ 
    public string PartName { get; set; } 
    public string PartId { get; set; } 
} 
+0

является вашим классом статическим? – NicoRiff

ответ

1

Вы не можете позвонить Добавить() как часть инициализатора. Изменение кода:

void SomeMethod() 
{ 
    List parts = new List(); 

    // Add parts to the list. 
    parts.Add(new Part() { PartName = "crank arm", PartId = 1234}); 
    parts.Add(new Part() { PartName = "chain ring", PartId = 1334 }); 
    parts.Add(new Part() { PartName = "regular seat", PartId = 1434 }); 
    parts.Add(new Part() { PartName = "banana seat", PartId = 1444 }); 
    parts.Add(new Part() { PartName = "cassette", PartId = 1534 }); 
    parts.Add(new Part() { PartName = "shift lever", PartId = 1634 }); 
} 

public class Part 
{ 
    public string PartName { get; set; } 
    public string PartId { get; set; } 
} 
1

Вам не нужно вызывать Add метод добавления элементов при использовании коллекции инициализатору (see here), просто перечислить их запятыми, как вы могли бы сделать с массивами, и вы сделали.

List parts = new List<Part>() { 
    // Add parts to the list. 
    new Part() { PartName = "crank arm", PartId = 1234}, 
    new Part() { PartName = "chain ring", PartId = 1334 }, 
    new Part() { PartName = "regular seat", PartId = 1434 }, 
    new Part() { PartName = "banana seat", PartId = 1444 }, 
    new Part() { PartName = "cassette", PartId = 1534 }, 
    new Part() { PartName = "shift lever", PartId = 1634 } 
}