Быстрое создание свойств C# из переменных
для C# я ненавижу выписывать переменные, а затем выписывать все свойства. Нет ли способа выбрать все переменные, щелкнуть правой кнопкой мыши и создать все свойства.
7 ответов
вы ищете инструмент рефакторинга кода? если это так, проверьте ReSharper. Он обеспечивает легкий для того чтобы повернуть простые пол-подпертые свойства в автоматическ-свойства, и наоборот.
если вы просто не хотите писать пользовательские свойства с поддержкой полей, можно использовать авто-недвижимость, пример fpor, например:
public string MyProperty { get; set; } // generates an auto-property
что эквивалентно:
private string m_MyProperty;
public string MyProperty
{
get { return m_MyProperty; }
set { m_MyProperty = value; }
}
вы можете даже сделать accessibilty разница между сеттером и геттером:
public string MyProperty { get; private set; }
Если вы решите использовать auto-properties, имейте в виду, что вы не можете получить доступ к базовому полю и не можете предоставить реализацию только для одной части (только геттер или только сеттер). Однако можно сделать свойство виртуальным.
щелкните правой кнопкой мыши на объявлении поля, рефакторинг меню - > инкапсулировать поле, и вы идете от
int n;
to
int n;
public int N
{
get { return n; }
set { n = value; }
}
Если вы используете C# 3.0 или выше (VisualStudio 2008, по существу), вы можете использовать auto properties. Хотя это не совсем то, о чем вы просите, это должно (надеюсь) сделать трюк.
вместо того, чтобы писать:
private string m_Name;
public string Name
{
get { return m_Name; }
set { m_Name = value; }
}
Вы можете просто написать:
public string Name { get; set; }
это даст вам быстрые, "тупые" (т. е. без логики извлечения или назначения) свойства, которые могут идти в вашем классе. Если вы обнаружите, что вам нужна логика извлечения и назначения позже, просто вернитесь и выполните полный синтаксис объявления свойств, и вам не придется изменять какой-либо вызывающий код.
единственное реальное различие заключается в том, что вам придется использовать свойство для получения значения в вашем классе, так как переменная поддержки генерируется и время компиляции и недоступна для вашего кода.
FYI, просто набрав "prop" (без кавычек), запускает один из фрагментов, который поставляется с VS, и вы просто закладываете свой путь, на сегодняшний день самый быстрый вариант.
почему вы не делаете:
public int SomeProperty { get; set; }
или
public int SomeOtherProperty { get; private set; }
?
вы, вероятно, должны использовать автоматически реализуемые свойства в C# для большинства вещей. Однако, если вам нужны свойства "старого стиля" с явными полями поддержки, вы можете создать фрагмент кода Visual Studio, чтобы упростить их запись. этот блог есть пример один.
мы можем быстро создавать свойства c# в visual studio с помощью prop ярлык и от имени visual studio tool мы можем создавать свойства c# с помощью инструмента генератор свойств c#..
когда класс имеет очень много свойств в нем , когда мы создаем объект этого класса, мы должны принять определенную боль, чтобы назначить свойства, поэтому этот инструмент уменьшит вашу боль в определенной степени, это автоматически назначит объект с свойства..