DESABILITAR ADBLOCK

ADBlock está bloqueando algum conteúdo do site

ADBlock errore

Como gerar getters e setters em Visual Studio?

StackOverflow https://stackoverflow.com/questions/3017

Pergunta

Por "gerar", quer dizer de auto-geração do código necessário para um particular seleccionado (conjunto de) variável (eis).

Mas qualquer explicação mais explícita ou comentário sobre boa prática é bem-vindo.

Solução

Ao invés de usar Ctrl + k , x você também pode simplesmente digitar prop e guia em seguida, bateu duas vezes

OUTRAS DICAS

Visual Studio também possui um recurso que irá gerar uma propriedade de uma variável privada.

Se você botão direito do mouse sobre uma variável, no menu de contexto que aparece clique no item "Refactor". Em seguida, escolha campo encapsular. Isto irá criar uma propriedade getter / setter para uma variável.

Eu não sou um fã muito grande de esta técnica, pois é um pouco complicado de usar se você tem que criar um monte de getters / setters, e põe a propriedade diretamente abaixo do campo privado, o que me incomoda porque Eu normalmente tenho todos os meus campos privados agrupados juntos, e esse recurso Visual Studio quebra minha classe formatação.

Ao gerar, você quer dizer auto-gerar? Se isso não é o que quer dizer:

Visual Studio 2008 tem a implementação mais fácil para isso:

public PropertyType PropertyName { get; set; }

No fundo isto cria uma variável de instância implícita de que sua propriedade é armazenada e recuperada.

No entanto, se você quiser colocar mais lógica em suas propriedades, você terá que ter uma variável de instância para ele:

private PropertyType _property;

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

As versões anteriores do Visual Studio sempre utilizado este método escrita comum também.

Eu uso o Visual Studio 2013 Professional.

  • Coloque o cursor na linha de uma variável de instância.
    enter descrição da imagem aqui
  • Pressione combinar teclas Ctrl + R , Ctrl + E ou clique no botão direito do mouse, escolha o menu de contexto Refactor \ Encapsulate Field... pressione OK.
    enter descrição da imagem aqui
  • Em diaglog Preview Reference Changes - Encapsulate Field, pressione o botão Apply.
    enter descrição da imagem aqui
  • Este é resultado:
    enter descrição da imagem aqui


Você também lugar cursor para a escolha de propriedade , utilize o menu Editar \ Refactor \ Encapsulate campo ...

e

private int productID;

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

become a

public int ProductID { get; set; }

Você também pode usar "propfull" e hit TAB duas vezes, variável e imóveis com get e set será gerar.

Se você estiver usando o Visual Studio 2005 e se você pode criar um setter / getter rápido real usando o comando Inserir trecho. Botão direito do mouse sobre o seu código clique em Inserir trechos ( Ctrl + k , x ) e, em seguida, escolha "prop" formar a lista. Espero que isso ajude.

Se você estiver usando ReSharper, ir para o menu ReSharper -> Code -> Gerar ... (ou hit Alt + Ins dentro da classe circundante ) e você terá todas as opções para gerar getters e / ou setters que você pode pensar: -)

usar a palavra-chave propfull.
Ele irá gerar propriedade e variável

Eu sei que isso é mais velho do que o sol, mas percebi que eu ia postar isso como minha resposta porque apenas como fazê-lo desta forma.

O que fiz foi criar meu próprio trecho que só acrescenta {get; set;}. Eu fiz isso só porque eu encontrar prop > tab ser desajeitado.

<?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>

Com isso, você digite o seu PropType e PropName manualmente, em seguida, digite get > tab e ele irá adicionar o conjunto get. Não é nada mágico, mas desde que eu tendem a digitar minha modificador de acesso primeira de qualquer maneira, posso muito bem terminar o nome e tipo.

No Visual Studio Community Edition 2015 você pode selecionar todos os campos que deseja e pressione ctrl + .to gerar automaticamente as propriedades. Você tem que escolher se você quiser usar a propriedade em vez do campo ou não.

Além do 'prop' trecho e auto-propriedades, há uma opção de refatorar para permitir que você selecione um campo existente e expô-la através de uma propriedade. Além disso, se você não gosta da implementação 'prop', você pode criar seus próprios trechos. Além disso, uma terceira parte ferramenta de refatoração como ReSharper lhe dará ainda mais recursos e tornar mais fácil para criar trechos mais avançados. Eu recomendo ReSharper se você pode pagar.

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

Eu não tenho Visual Studio instalado na minha máquina mais (e eu estou usando Linux), mas eu me lembro que havia um assistente em algum lugar escondido dentro de um dos menus que deram acesso a um construtor de classe.

Com este assistente, você pode definir todos os detalhes das suas classes, incluindo métodos e atributos. Se bem me recordo, houve uma opção através da qual você poderia pedir VS para criar os setters e getters automaticamente para você.

Eu sei que é bastante vago, mas verificá-la e você pode encontrá-lo.

Primeiro obtenha Extensão basta pressionar (ctrl + shift + X) e instalar setter getter .... Após isso basta selecionar o seu variável e clique direito ir para a paleta de comando ... E digite getter ... Ele irá sugerir gerar métodos get e set clicar neste ...

enter descrição da imagem aqui nome da ferramenta visual studio podemos facilmente gerar c # propriedades usando a ferramenta on-line chamado. c # propery gerador.

Você imprensa apenas simples Alt + Ins no android estúdio depois de declarar variáveis, você vai obter os getters e setters na geração de código.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow