Нет, но вы можете легко инициализировать их в своем конструкторе без параметров.
public class AA
{
public AA()
{
// default values
Value1 = "hi";
Value2 = 12;
}
public string Value1 {get;set}
public int Value2 {get;set;}
}
Или вместо использования автоматически реализованных свойств использовать фактические свойства с полями инициализации до значения по умолчанию.
public class AA
{
private string _value1 = "hi";
public string Value1
{ get { return _value1; } }
{ set { _value1 = value; } }
private int _vaule2 = 12;
public int Value2
{ get { return _value2; } }
{ set { _value2 = value; } }
}
Создание свойства с фактическим полем поддержки не является такой большой проблемой, связанной с фрагментами Visual Studio. Набрав prop
в VS и нажав клавишу Tab
, вы получите полный фрагмент для свойства чтения/записи.
[Редактировать] Проверить эту нить также: How do you give a C# Auto-Property a default value?
[Еще один править] Если ваш считаю, что это сделает его более удобным для чтения, проверить по следующей ссылке: это получить/установить фрагмент кода, который будет генерировать свойство с необходимым полем поддержки и автоматически добавить вокруг него блок #region
, чтобы свернуть код: Snippets at CodePlex (by Omer van Kloeten). Загрузите его и проверьте фрагмент Get+Set Property (prop)
.
Моя проблема заключается в том, что у моего класса слишком много свойств – ebattulga
Но как это связано с наличием значений по умолчанию для свойств? Если ваш класс является классом типа «набор параметров», тогда вам нужно иметь значения по умолчанию. – Groo