2009-03-30 2 views
2

Работают ли авто-свойства в VS 2005? Кажется, я не могу скомпилировать классы C# (то же самое с инициализацией на месте). У меня установлен framework 3 sp1. Являются ли эти функции доступными только в VS 2008 или что-то я делаю неправильно?C# auto property VS 2005?

К в месте инициализации я имею в виду следующее:

SomeClass c = new SomeClass() 
{ 
    Name = "", 
    Value = 12345 
}; 

ответ

6

Автоматически реализованные свойства и инициализаторы объектов (образец, который вы показали) были введены в C# 3.0. Visual Studio 2005 компилирует только C# 2.0.

Подробнее о том, какая версия (и какие функции C# 3.0 можно использовать при настройке .NET 2.0), см. my article on the topic.

1

No. Autoproperties являются продуктом 3.5 компилятора и только VS2008 их можно понять.

0

На самом деле, с добавлением WPF/WCF для VS2005 вы можете создавать 3.0 приложения. Однако компилятор не может использовать компилятор 3.5.

Я использовал надстройку для создания приложений WPF при выпуске 3.0. 3.5 был эксклюзивным для IDE 2008 года.

EDIT: Я хочу сказать, что компилятор, подключенный к отладчику VS2005, не может их использовать, и, таким образом, вы получаете ошибку во время компиляции.

1

Вы можете использовать auto-properties в VS 2008 для проектов, предназначенных для .NET 2.0.

Вы также можете использовать лямбда-выражения и ключевое слово var.