Comment générer des accesseurs dans Visual Studio?

voix
180

Par « générer », je veux dire la génération automatique du code nécessaire pour un particuliar variable sélectionnée (ensemble de) (s).

Mais une explication plus explicite ou un commentaire sur les bonnes pratiques sont les bienvenus.

Créé 06/08/2008 à 03:15
source utilisateur
Dans d'autres langues...                            


15 réponses

voix
244

Plutôt que d' utiliser ctrl+ k, xvous pouvez aussi simplement taper propet puis appuyez deux fois sur Tab

Créé 06/08/2008 à 03:43
source utilisateur

voix
46

Visual Studio dispose également d'une fonctionnalité qui va générer une propriété d'une variable privée.

Si vous faites un clic droit sur une variable, dans le menu contextuel qui apparaît, cliquez sur l'élément « refactoring ». Ensuite, choisissez encapsulent champ. Cela va créer une propriété de lecture / setter pour une variable.

Je ne suis pas trop grand fan de cette technique car il est un peu difficile à utiliser si vous devez créer beaucoup de getters / setters, et il met la propriété directement en dessous du champ privé, ce qui me tracasse parce que j'ai souvent tous mes champs privés regroupés, et cette fonctionnalité Visual studio rompt ma classe mise en forme.

Créé 06/08/2008 à 03:52
source utilisateur

voix
29

En générer, voulez-vous dire générer automatiquement? Si ce n'est pas ce que vous entendez:

Visual Studio 2008 a la mise en œuvre plus facile pour cela:

public PropertyType PropertyName { get; set; }

Dans l'arrière-plan ce qui crée une variable d'instance implicite auquel votre propriété est stockée et récupérée.

Toutefois, si vous voulez mettre plus logique dans vos propriétés, vous devez avoir une variable d'instance pour elle:

private PropertyType _property;

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

Les versions précédentes de Visual Studio toujours utilisé cette méthode longhand aussi bien.

Créé 06/08/2008 à 03:31
source utilisateur

voix
27

J'utilise Visual Studio 2013 Professional.

  • Placez votre curseur sur la ligne d'une variable d'instance.

    entrez la description d'image ici

  • Appuyez sur les touches combiner Ctrl+ R, Ctrl+ Eou cliquez sur le bouton droit de la souris, choisissez le menu contextuel , Refactor \ Encapsulate Field...puis appuyez sur OK.

    entrez la description d'image ici

  • En Preview Reference Changes - Encapsulate Fielddiaglog, appuyez sur le bouton Apply.

    entrez la description d'image ici

  • Ce résultat est:

    entrez la description d'image ici



Vous avez également placer le curseur pour choisir la propriété , utilisez le menu Edition \ Refactor \ Encapsulate champs ...

et

private int productID;

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

devenir à

public int ProductID { get; set; }
Créé 28/04/2015 à 10:41
source utilisateur

voix
25

vous pouvez également utiliser « propfull » et cliquez TABdeux fois, variable et propriété avec get et set sera générer.

Créé 17/07/2012 à 11:59
source utilisateur

voix
7

Si vous utilisez Visual Studio 2005 et de vous pouvez créer un setter / getter en utilisant la commande rapide réelle insertion d'extrait. Faites un clic droit sur votre code cliquez sur Insérer Snippet ( Ctrl+ k, x) puis choisissez « prop » former la liste. J'espère que cela t'aides.

Créé 06/08/2008 à 03:35
source utilisateur

voix
4

Si vous utilisez ReSharper, allez dans le menu ReSharper -> Code -> Generate ... (ou frapper Alt+ Insdans la classe autour) et vous aurez toutes les options pour générer des getters et / ou setters vous pouvez penser de :-)

Créé 28/09/2009 à 18:56
source utilisateur

voix
2

Je sais que c'est plus vieux que le soleil, mais pensé que je posterais ce que ma réponse parce qu'il tout comme il faire de cette façon.

Ce que je faisais était de créer mon propre extrait qui ajoute SEULEMENT {get; set;}. Je l' ai fait parce que je trouve prop > tabêtre maladroits.

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

Avec cela, vous tapez votre PropType et PropName manuellement, tapez alors get > tabet il va ajouter le jeu get. Son rien de magique, mais depuis que je tends à taper mon premier modificateur d'accès de toute façon, je peux aussi bien terminer le nom et le type.

Créé 25/03/2015 à 20:07
source utilisateur

voix
2

utiliser le propfullmot - clé.
Il va générer la propriété et variable

Créé 25/09/2014 à 04:16
source utilisateur

voix
1

Dans la communauté Visual Studio Édition 2015 vous pouvez sélectionner tous les champs que vous souhaitez, puis appuyez sur ctrl + .pour générer automatiquement les propriétés. Vous devez choisir si vous voulez utiliser la propriété plutôt que sur le terrain ou non.

Créé 06/01/2017 à 22:04
source utilisateur

voix
1

En plus de l'extrait « prop » et les propriétés auto, il y a une option de refactoring pour vous permettre de sélectionner un champ existant et de l'exposer via une propriété. En outre, si vous ne voulez pas la mise en œuvre « prop », vous pouvez créer vos propres extraits. De plus, un outil de refactoring 3ème partie comme ReSharper vous donnera encore plus de fonctionnalités et de le rendre plus facile de créer des extraits plus avancés. Je vous recommande de ReSharper si vous pouvez vous le permettre.

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

Créé 12/01/2009 à 16:22
source utilisateur

voix
1

Je n'ai pas Visual Studio installé sur ma machine plus (et je suis sous Linux), mais je ne me souviens qu'il y avait un assistant caché quelque part dans l'un des menus qui ont donné accès à un constructeur de classe.

Avec cet assistant, vous pouvez définir tous les détails vos classes, y compris les méthodes et les attributs. Si je me souviens bien, il y avait une option par laquelle vous pourriez demander VS pour créer les setters et getters automatiquement pour vous.

Je sais qu'il est assez vague, mais le vérifier et vous pourriez trouver.

Créé 06/08/2008 à 03:24
source utilisateur

voix
0

Tout d'abord obtenir l'extension appuyez simplement sur (Ctrl + Maj + X) et installer setter getter .... Après cela, il suffit de sélectionner votre variable et cliquez droit aller à la palette de commandes ... et le type getter ... Il vous proposera de générer méthodes get et set cliquez sur ce ...

Créé 17/12/2018 à 08:33
source utilisateur

voix
0

Vous venez de presse simple Alt+ Insen studio android après la déclaration de variables, vous obtiendrez les accesseurs en génération de code.

Créé 28/11/2017 à 04:13
source utilisateur

voix
0

entrez la description d'image iciau nom de l'outil studio visuel nous pouvons facilement générer des propriétés C # en utilisant l' outil en ligne appelé. c générateur # de propery.

Créé 14/08/2017 à 12:04
source utilisateur

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