В C # у меня может быть свойство без необходимости объявления частной переменной.
Мой код VB6, который выглядел так
'local variable(s) to hold property value(s)
Private mvarPhoneNumber As String 'local copy
Public Property Let PhoneNumber(ByVal vData As String)
'used when assigning a value to the property, on the left side of an assignment.
'Syntax: X.PhoneNumber = 5
mvarPhoneNumber = vData
End Property
Public Property Get PhoneNumber() As String
'used when retrieving value of a property, on the right side of an assignment.
'Syntax: Debug.Print X.PhoneNumber
PhoneNumber = mvarPhoneNumber
End Property
теперь может выглядеть так.
public string PhoneNumber{get;set;}
Как я могу поставить валидацию в методах получения и установки в C #?
Я попытался добавить проверку, как это.
public string PhoneNumber
{
get
{
return PhoneNumber;
}
set
{
if (value.Length <= 30)
{
PhoneNumber = value;
}
else
{
PhoneNumber = "EXCEEDS LENGTH";
}
}
}
Часть get этого кода не скомпилируется.
Нужно ли возвращаться к использованию закрытой переменной?