public string MyNumber
{
get { return _myNumber != null ? _myNumber : ""; }
set {
SetStringPropertyHelper(value , out _myNumber, _lenmyNumber, true);
}
}
Как видите, там очень часто встречается слово _myNumber.
Проблема в том, что таких пропертей нужно штук 50 в 4 классах.
Соотвественно есть два пути 1) копировать и ручками заменять все 3 нмбера. Но єто труд машинистки, а не программиста
2)Сделать так, чтобы этот _myNumber сам заменялся программным способом.
Если бы это был С++, то я бы написал что-то типа
public string MyNumber
{
#define NUMBER _myNumber
get { return NUMBER != null ? NUMBER : ""; }
set {
SetStringPropertyHelper(value , out NUMBER, _lenmyNumber, true);
}
}
Да, я в курсе, что дефайн действует глобально и пропертей нет в С++, но сама идея
Или типа
public string MyNumber
{
string *pNumber;
get { return *pNumber != null ? *pNumber : ""; }
set {
SetStringPropertyHelper(value , out *pNumber, _lenmyNumber, true);
}
}
Но, какая технология есть на шарпе, чтобы сделать изящно?