Как создать методы получения и установки в Visual Studio?

голоса
180

Под «генерировать», я имею в виду автоматическое генерирование кода, необходимого для выбранного particuliar (набор) переменной (ов).

Но любая более явная экспликация или комментарий на хорошей практике приветствуется.

Задан 06/08/2008 в 03:15
источник пользователем
На других языках...                            


14 ответов

голоса
244

Вместо того чтобы использовать ctrl+ k, xвы можете просто ввести , propа затем вкладку ударил дважды

Ответил 06/08/2008 d 03:43
источник пользователем

голоса
46

Visual Studio также имеет функцию, которая будет генерировать свойство из частных переменных.

Если щелкнуть правой кнопкой мыши на переменную, в контекстном меню, которое выскакивает нажмите на пункт «Refactor». Затем выберите инкапсулировать поле. Это позволит создать геттер / сеттер свойство для переменной.

Я не слишком большой фанат этой техники, так как это немного неудобно использовать, если вам нужно создать много геттеров / сеттеров, и это ставит свойство непосредственно под частное поле, какие ошибки меня, потому что я обычно имею все мои частных полей сгруппированы вместе, и эта возможность визуальной студии ломает мой класс форматирование.

Ответил 06/08/2008 d 03:52
источник пользователем

голоса
29

При генерации, вы имеете в виду автогенерация? Если это не то, что вы имеете в виду:

Visual Studio 2008 имеет простую реализацию для этого:

public PropertyType PropertyName { get; set; }

На заднем плане это создает подразумеваемое переменную экземпляра, к которому ваше имущество хранится и извлекается.

Однако, если вы хотите поставить более логику в свойствах, вы будете иметь переменный экземпляр для этого:

private PropertyType _property;

public PropertyType PropertyName
{
    get
    {
        //logic here 
        return _property;
    }
    set
    {
        //logic here
        _property = value;
    }
 }

Предыдущие версии Visual Studio всегда использовали этот метод обыкновенного письма, а также.

Ответил 06/08/2008 d 03:31
источник пользователем

голоса
27

Я использую Visual Studio 2013 Professional.

  • Наведите курсор на строку переменной экземпляра.

    введите описание изображения здесь

  • Нажмите объединить клавиши Ctrl+ R, Ctrl+ Eили Нажмите правую кнопку мыши, выберите контекстное меню , а Refactor \ Encapsulate Field...затем нажать OK.

    введите описание изображения здесь

  • В Preview Reference Changes - Encapsulate Fielddiaglog, нажмите кнопку Apply.

    введите описание изображения здесь

  • Это результат:

    введите описание изображения здесь



Вы также поместить курсор для выбора свойства , используйте меню Edit \ Refactor \ Encapsulate поле ...

а также

private int productID;

public int ProductID
{
    get { return productID; }
    set { productID = value; }
}

стать в

public int ProductID { get; set; }
Ответил 28/04/2015 d 10:41
источник пользователем

голоса
25

Вы можете также использовать «propfull» и нажмите TABдважды, переменные и собственность с получением и установками будут генерировать.

Ответил 17/07/2012 d 11:59
источник пользователем

голоса
7

Если вы используете Visual Studio 2005 и выше вы можете создать сеттер / добытчика очень быстро с помощью команды вставки сниппета. Щелкните правой кнопкой мыши на ваш код нажмите на Insert Snippet ( Ctrl+ k, x) , а затем выбрать «подпирать» формируют список. Надеюсь это поможет.

Ответил 06/08/2008 d 03:35
источник пользователем

голоса
4

Если вы используете ReSharper, перейдите в меню ReSharper -> Code -> Создать ... (или нажмите Alt+ Insвнутри окружающего класса) , и вы получите все варианты для создания методов получения и / или сеттеров вы можете думать из :-)

Ответил 28/09/2009 d 18:56
источник пользователем

голоса
2

Я знаю, что это старше, чем солнце, но полагал, что я бы этот пост, как мой ответ, потому что он так же, как делает это таким образом.

То , что я сделал , было создать свой собственный фрагмент кода , который только добавляет {get; set;}. Я сделал это только потому , что я нахожу , prop > tabчтобы быть неуклюжим.

<?xml version="1.0" encoding="utf-8"?>
<CodeSnippets
xmlns="http://schemas.microsoft.com/VisualStudio/2005/CodeSnippet">
  <CodeSnippet Format="1.0.0">
    <Header>
        <Title>get set</Title>
         <Shortcut>get</Shortcut>
    </Header>
    <Snippet>
        <Code Language="CSharp">
            <![CDATA[{get; set;}]]>
        </Code>
    </Snippet>
  </CodeSnippet>

При этом, вы введите PropType и Имя_свойства вручную, а затем введите get > tabи это добавит множество ГЭТ. Его ничто не магическая, но так как я склонен вводить свой модификатор доступа первым в любом случае, я могу также закончить имя и тип.

Ответил 25/03/2015 d 20:07
источник пользователем

голоса
2

используйте propfullключевое слово.
Он будет генерировать свойство и переменную

Ответил 25/09/2014 d 04:16
источник пользователем

голоса
1

В Visual Edition , студия Community 2015 Вы можете выбрать все поля , которые вы хотите , а затем нажмите кнопку ctrl + .для автоматического создания свойства. Вы должны выбрать , если вы хотите использовать свойство вместо поля или нет.

Ответил 06/01/2017 d 22:04
источник пользователем

голоса
1

В дополнении к «подпирать» сниппет и авто-свойства, есть опция рефакторинга, чтобы выбрать существующее поле и подвергать его воздействие через свойство. Кроме того, если вам не нравится реализация «пропеллер», вы можете создавать свои собственные фрагменты. Кроме того, третий инструмент партии рефакторинга как ReSharper даст вам еще больше возможностей и сделать его проще создавать более сложные фрагменты. Я бы рекомендовал Resharper, если вы можете себе это позволить.

http://msdn.microsoft.com/en-us/library/f7d3wz0k(VS.80).aspx http://www.jetbrains.com/

Ответил 12/01/2009 d 16:22
источник пользователем

голоса
1

Я не установлена ​​Visual Studio на моей машине больше (и я использую Linux), но я помню, что там был мастер спрятана где-то в одном из меню, которые дали доступ к классу строитель.

С помощью этого мастера можно определить все детали вашего класса, включая методы и атрибуты. Если я хорошо помню, там было вариант, через который вы можете попросить VS создать сеттер и добытчик автоматически.

Я знаю, что это довольно расплывчато, но проверить это, и вы можете найти его.

Ответил 06/08/2008 d 03:24
источник пользователем

голоса
0

Вы как раз просто нажмите Alt+Ins в андроиде студии после объявления переменных, вы получите методы получения и установки в генерации коды.

Ответил 28/11/2017 d 04:13
источник пользователем

голоса
0

введите описание изображения здесьимя визуальной студии инструмента мы можем легко генерировать C # свойство , используя онлайн - инструмент под названием. C # Собственость генератор.

Ответил 14/08/2017 d 12:04
источник пользователем

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more