Wie generieren Sie Getter und Setter in Visual Studio?

  • Mit "Generieren" meine ich die automatische Erzeugung des Codes, der für eine bestimmte ausgewählte (Gruppe von) Variablen erforderlich ist.

    Weitere explizite Erklärungen oder Kommentare zu bewährten Verfahren sind willkommen.

    04 October 2012
    bitekakdotcom
14 answers
  • Statt ctrl + k , x können Sie auch einfach prop eingeben und dann zweimal die Tabulatortaste drücken

    06 February 2013
    Naveed SAshu Phaugat
  • Visual Studio verfügt auch über eine Funktion, mit der eine Eigenschaft aus einer privaten Variablen generiert wird.

    Wenn Sie mit der rechten Maustaste auf eine Variable klicken, wird das Kontextmenü eingeblendet Klicken Sie auf "Refactor". Wählen Sie dann das Einkapselungsfeld. Dadurch wird eine Getter- / Setter-Eigenschaft für eine Variable erstellt.

    Ich bin kein großer Fan dieser Technik, da sie ein wenig umständlich ist, wenn Sie sie erstellen müssen viele Getter / Setter, und die Eigenschaft befindet sich direkt unter dem privaten Feld, was mich stört, da ich normalerweise alle meine privaten Felder zusammen gruppiert habe und dieses Visual Studio-Feature die Formatierung meiner Klasse unterbricht.

    06 August 2008
    Dan Herbert
  • Meinen Sie mit Generieren automatisch generieren? Wenn Sie das nicht meinen:

    Visual Studio 2008 bietet dafür die einfachste Implementierung:

     public PropertyType PropertyName { get; set; }
     

    Im Hintergrund wird eine implizite Instanzvariable erstellt, in der Ihre Eigenschaft gespeichert und abgerufen wird.

    Wenn Sie jedoch mehr Logik einfügen möchten Ihre Eigenschaften müssen Sie über eine Instanzvariable verfügen:

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

    Vorherige Versionen von Visual Studio wurden immer verwendet Diese langjährige Methode ebenfalls.

    06 August 2008
    Jon Limjap
  • Ich verwende Visual Studio 2013 Professional.

    • Platzieren Sie den Cursor an der Zeile einer Instanzvariablen.

      Wie generieren Sie Getter und Setter in Visual Studio?

    • Drücken Sie die Kombinationstasten Ctrl + R , Ctrl + E oder Klicken Sie mit der rechten Maustaste, wählen Sie das Kontextmenü Refactor \ Encapsulate Field... und drücken Sie dann OK.

      Wie generieren Sie Getter und Setter in Visual Studio?

    • Drücken Sie im Diaglog Preview Reference Changes - Encapsulate Field die Taste Apply.

      Wie generieren Sie Getter und Setter in Visual Studio?

    • Dies ist das Ergebnis:

      Wie generieren Sie Getter und Setter in Visual Studio?



    Sie können auch einen Cursor zum Auswählen der Eigenschaft setzen verwenden Sie Menü Bearbeiten \ Refactor \ Encapsulate Field ...

    und

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

    werden zu

     public int ProductID { get; set; }
     
    09 March 2016
    DuncanSungWKimjgerstle
  • Sie können auch "propfull" verwenden und zweimal TAB drücken. Variable und Eigenschaft werden mit get und set generiert.

    06 February 2013
    Naveed SAshu Phaugat
  • Wenn Sie Visual Studio 2005 oder höher verwenden, können Sie mit dem Befehl insert snippet sehr schnell einen Setter / Getter erstellen. Klicken Sie mit der rechten Maustaste auf den Code, und klicken Sie auf Einfügen von Ausschnitten ( Strg + k , x ). Wählen Sie dann "prop" aus der Liste aus. Hoffe, das hilft.

    06 February 2013
    Naveed SAshu Phaugat
  • Wenn Sie ReSharper verwenden, gehen Sie in das ReSharper-Menü - & gt; Code - & gt; Generieren ... (oder klicken Sie in der umgebenden Klasse auf Alt + Ins ) und Sie erhalten alle Optionen zum Generieren von Getigern und / oder Setters, die Sie sich vorstellen können )

    06 February 2013
    Naveed SAshu Phaugat
  • Verwenden Sie das Schlüsselwort propfull.
    Es werden Eigenschaften und Variablen

    generiert
    25 September 2014
    Hashbrown
  • Ich weiß, dass dies älter ist als die Sonne, aber ich dachte, ich würde dies als meine Antwort posten, weil es einfach so ist, es so zu tun.

    Was ich getan habe, war ein eigenes Snippet erstellen, das NUR {get; set;} hinzufügt. Ich habe es nur gemacht, weil ich finde, dass prop > tab unbeholfen ist.

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

    Hier geben Sie Ihren PropType ein und PropName manuell, dann tippen Sie get > tab und es wird das get-Set hinzugefügt. Es ist nichts Magisches, aber da ich ohnehin dazu neige, meinen Zugriffsmodifikator zuerst einzugeben, kann ich auch den Namen und den Typ beenden.

    25 March 2015
    bsayegh
  • Zusätzlich zu den 'Prop'-Ausschnitten und Auto-Eigenschaften gibt es eine Refactor-Option, mit der Sie ein vorhandenes Feld auswählen und über eine Eigenschaft anzeigen können. Wenn Sie die Prop-Implementierung nicht mögen, können Sie Ihre eigenen Snippets erstellen. Darüber hinaus bietet ein Refactoring-Tool von Drittanbietern wie Resharper noch mehr Funktionen und erleichtert das Erstellen von erweiterten Snippets. Ich würde Resharper empfehlen, wenn Sie es sich leisten können.

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

    12 January 2009
    KronoS