Как создать несколько обработчиков для getter и setter, чтобы не писать одинаковый код для каждого поля. Я понимаю, что для этого есть образец дизайна.Несколько геттеров и сеттеров
public class TestClass
{
private string _firstName;
private string _lastName;
private string _personDescription;
private string _other;
public TestClass() { }
//same for lastName, personDescription, other
public string FirstName
{
get
{
return _firstName;
}
set
{
_firstName = FixValue(value);
}
}
private string FixValue(string value)
{
value = value.Trim();
if (value == string.Empty)
{
return null;
}
return value;
}
}
У меня была такая же проблема. Я использую фрагменты кода в Visual Studio и просто создаю новый кусок кода для каждой переменной. Создать собственный фрагмент кода (http://msdn.microsoft.com/en-us/library/ms165394.aspx). Надеюсь, это было полезно. – mkamioner
Да, нет настоящего чистого способа, кроме этого. Обычно есть несколько макросов, чтобы сделать такие вещи более легкими, но результат будет таким же. – Davio
Единственное, что я могу сказать, это то, что если бы у вас была PostSharp или какая-то другая структура AOP, вы могли бы использовать аспект. Я не думаю, что есть другие способы сделать это на C#. PS: Вероятно, вы должны проверить, является ли значение «value» равным null перед вызовом 'value.Trim()'. –