Для хардкорных программистов C # здесь это может показаться совершенно глупым вопросом, однако я только что наткнулся на фрагмент образца кода в AWS SDK форум и был полностью отстранен от него:
RunInstancesRequest runInstance = new RunInstancesRequest()
.WithMinCount(1)
.WithMaxCount(1)
.WithImageId(GetXMLElement("ami"))
.WithInstanceType("t1.micro");
Это очень напоминает старый синтаксис VB6 With ... End With
, на отсутствие которого я долго сетовал в C # - я скомпилировал его в мой проект VS2008, и он работает, сохранение множества отдельных строк, ссылающихся на эти атрибуты по отдельности.
Я уверен, что раньше читал статьи, объясняющие, почему VB6-style With
-block не был в C #, поэтому мой вопрос: всегда ли этот синтаксис существовал в языке, или это недавнее изменение .NET, которое включило его? Можем ли мы покрыть все экземпляры объектов, за которыми следуют изменения атрибутов, одним и тем же сахаром?