Risposte:
Invece di usare Ctrl+ K, Xpuoi anche solo digitare prop
e quindi premere Tabdue volte.
Visual Studio ha anche una funzione che genererà una proprietà da una variabile privata.
Se si fa clic su una variabile, nel menu contestuale che si apre, fare clic sulla voce "refactoring", e scegliere Incapsula campo ... . Ciò creerà una proprietà getter / setter per una variabile.
Non sono un grande fan di questa tecnica in quanto è un po 'scomodo da usare se devi creare molti getter / setter e mette la proprietà direttamente sotto il campo privato, il che mi dà fastidio, perché di solito ho raggruppato tutti i miei campi privati e questa funzionalità di Visual Studio interrompe la formattazione della mia classe.
Uso Visual Studio 2013 Professional.
Posiziona anche il cursore per scegliere una proprietà . Usa il menu Modifica → Refactor → Encapsulate Field ...
Altre informazioni:
Dal C # 3.0 (19 novembre 2007), possiamo usare le proprietà auto-implementate (questo è semplicemente zucchero sintattico ).
E
private int productID;
public int ProductID
{
get { return productID; }
set { productID = value; }
}
diventa
public int ProductID { get; set; }
Per generare, intendi auto-generare? Se non è quello che vuoi dire:
Visual Studio 2008 ha l'implementazione più semplice per questo:
public PropertyType PropertyName { get; set; }
Sullo sfondo viene creata una variabile di istanza implicita in cui la proprietà viene archiviata e recuperata.
Tuttavia, se vuoi inserire più logica nelle tue Proprietà, dovrai avere una variabile di istanza per essa:
private PropertyType _property;
public PropertyType PropertyName
{
get
{
//logic here
return _property;
}
set
{
//logic here
_property = value;
}
}
Le versioni precedenti di Visual Studio utilizzavano sempre anche questo metodo longhand.
property_
anziché prima _property
?
Puoi anche usare "propfull" e premere TABdue volte.
Verranno generate la variabile e la proprietà con get e set.
Usa la propfull
parola chiave.
Genererà una proprietà e una variabile.
Digita la parola chiave propfull
nell'editor, seguita da due TABsecondi. Genererà codice come:
private data_type var_name;
public data_type var_name1{ get;set;}
Video che dimostra l'uso dello snippet "propfull" (tra le altre cose), a 4 minuti e 11 secondi.
Ho creato il mio frammento che aggiunge solo{get; set;}
. L'ho fatto solo perché trovo prop
→ Tabessere goffa.
<?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>
</CodeSnippets>
Con questo, digitate PropType e PropName manualmente, quindi digitate get
→ Tabe aggiungerà il set get. Non è niente di magico, ma dal momento che tendo a digitare prima il mio modificatore di accesso, posso anche finire il nome e il tipo.
In Visual Studio Community Edition 2015 è possibile selezionare tutti i campi desiderati e quindi premere Ctrl + .per generare automaticamente le proprietà.
Devi scegliere se vuoi usare la proprietà invece del campo o meno.
Oltre allo snippet 'prop' e alle proprietà automatiche, esiste un'opzione refactor che consente di selezionare un campo esistente ed esporlo tramite una proprietà ( fare clic con il tasto destro del mouse sul campo → Refactor → Encapsulate Field ... ).
Inoltre, se non ti piace l'implementazione 'prop', puoi creare i tuoi frammenti. Inoltre, uno strumento di refactoring di terze parti come ReSharper ti offre ancora più funzionalità e semplifica la creazione di snippet più avanzati. Consiglierei ReSharper se te lo puoi permettere.
http://msdn.microsoft.com/en-us/library/f7d3wz0k(VS.80).aspx
Video che dimostra l'uso dello snippet 'prop' (tra le altre cose), a 3 minuti e 23 secondi.
In Visual Studio 2019, seleziona le tue proprietà in questo modo:
Quindi premere Ctrl+r
Quindi premereCtrl+e
Viene visualizzata una finestra di dialogo che mostra l'anteprima delle modifiche che verranno apportate al codice. Se tutto sembra a posto (cosa che per lo più sarà), premere OK
.
Non ho più Visual Studio installato sul mio computer (e sto usando Linux), ma ricordo che c'era una procedura guidata nascosta da qualche parte all'interno di uno dei menu che consentiva l'accesso a un generatore di classi.
Con questa procedura guidata, è possibile definire tutti i dettagli delle classi, inclusi metodi e attributi. Se ricordo bene, c'era un'opzione attraverso la quale si poteva chiedere a Visual Studio di creare automaticamente setter e getter.
So che è abbastanza vago, ma dai un'occhiata e potresti trovarlo.
Per conto dello strumento Visual Studio, possiamo facilmente generare proprietà C # usando uno strumento online chiamato generatore di proprietà C #.
Per prima cosa prendi l'estensione, premi ( Ctrl+ Shift+ X) e installa getter setter ....
Successivamente, basta selezionare la variabile e fare clic con il tasto destro. Vai alla palette dei comandi ...
E digita getter ... Suggerirà di generare metodi get e set. Clicca su questo ...
Basta semplicemente premere Alt+ Insin Android Studio.
Dopo aver dichiarato le variabili, otterrai i getter e i setter nel codice generato.