Недавно я преобразовал справедливый бит кода с VB на C#, и я заметил, что в VB вы можете инициировать новый obj, используя сокращенное обозначение, возможно ли это на C# или вам нужно использовать фоновое поле.Можете ли вы определить «новое» свойство, используя короткую руку?
Public Property MyList As New List(Of String)
Оказывается, что C# эквивалент:
private List<String> _myList = new List<string>();
public List<String> MyList
{
get { return _myList; }
set { _myList = value; }
}
Примечание * Боль выписывая это можно сделать гораздо проще с помощью команды быстрого доступа 'propfull'
Короткий ответ: Нет, прямой перевод с этой строки на C# отсутствует, вы не можете инициализировать и определить свойство в той же строке. – qJake
Это может быть дубликат, хотя он не упоминает VB.NET: [Инициализация авто-свойств C#] (http://stackoverflow.com/questions/169220/initializing-c-sharp-auto-properties) –
@TimSchmelter Согласен , но, вероятно, не следует закрывать как обман, потому что этот вопрос касается миграции VB на C#, тогда как этого нет. – qJake