Там нет простого способа чтобы сделать это, оставив авто-собственность на месте.
Если вам не требуется автоматическое свойство, преобразовать код с помощью частных переменного и неавтоматического свойства:
private List<string> membershipIds = new List<string>();
public List<string> MembershipIds {
get { return membershipIds; }
set { membershipIds = value; }
}
Если вам требуются автоматическое свойство, вам нужно сделать задание в конструкторе:
public List<string> MembershipIds { get;set; }
...
// This constructor will do the assignment.
// If you do not plan to publish no-argument constructor,
// it's OK to make it private.
public MyClass() {
MembershipIds = new List<string>();
}
// All other constructors will call the no-arg constructor
public MyClass(int arg) : this() {// Call the no-arg constructor
.. // do other things
}
public MyClass(string arg) : this() {// Call the no-arg constructor
.. // do other things
}
Приобретено, но когда «требуется авто-собственность»? –
Цепочки 'this()' нуждаются в синтаксической коррекции. –
@JeppeStigNielsen Спасибо, я сегодня утром переключился в режим Java! Я думаю, что единственный случай, когда требуется авто-собственность, - это когда есть стандарт кодирования в масштабе всей компании, требующий их использования. Я не могу думать о технической причине, требующей их использования над переменной + get/set pair. – dasblinkenlight