Visual Studio
Visual Studio-hulpmiddelen
Zoeken…
Codelens
Codelens is een eenvoudige manier om te weten wat er met de code gebeurt. Hier kunt u een afbeelding vinden met het aantal referenties van een methode of klasse.
Als u de codelens niet kunt zien, ziet u deze vraag: Referenties met ontbrekende CodeLens tellen in de VS 2015 Community-editie
snippets
intoduction
Sinds Visual Studio 2005 kun je Intellisense-codefragmenten maken. Hiermee kunt u code genereren door slechts één trefwoord te typen en twee keer op de tab- toets te drukken.
Gebruik de code
De XML-code die u nodig hebt om een Intellisense-codefragment te maken, staat hieronder:
<?xml version="1.0" encoding="utf-8"?> <CodeSnippets xmlns="http://schemas.microsoft.com/VisualStudio/CodeSnippet"> <CodeSnippet Format="1.0.0"> <!-- format attribute is required --> <Header> <!-- 1 --> <Title></Title> <Author></Author> <Shortcut></Shortcut> <Description></Description> <Keywords> <Keyword>abc<Keyword> <Keyword>def<Keyword> </keywords> </Header> <Snippet> <!-- 2 --> <Imports> <!-- 2.1 --> <Import> <Namespace>System</Namespace> </Import> </Imports> <Declarations> <!-- 2.2 --> <Literal Editable="true/false"> <!-- 2.2.1 --> <ID>example</ID> <Type>System.String</Type> <ToolTip>A tip you can show</ToolTip> <Default>default value</Default> <Function></Function> <!-- 2.2.2 --> </Literal> <Object> <!-- 2.2.1 --> <ID>example</ID> <Type>System.String</Type> <ToolTip>A tip you can show</ToolTip> <Default>default value</Default> <Function></Function> <!-- 2.2.2 --> </Object> </Declarations> <References> <!-- 2.3 --> <Reference> <Assembly>System.Data.dll</Assembly> </Reference> </References> <Code Language=""> <!-- 2.4 --> <![CDATA[ <!-- your code here if you use literals use dollar chars --> ]]> </Code> </Snippet> </CodeSnippet> </CodeSnippets>
In de snippet-tag hebt u twee vereiste tags met de naam Header en Snippet. U kunt meer informatie vinden in de volgende koppen. Het nummer bij de naam komt overeen met de nummers in de bovenstaande code.
Er kunnen nul of meer CodeSnippet-elementen worden toegevoegd aan het CodeSnippets-element.
1. Koptekst
In de header-tag kunt u specifieke informatie plaatsen over het fragment en wat hij doet. De belangrijke tags die u in deze tag kunt gebruiken, zijn:
Element | Beschrijving |
---|---|
Titel | De titel van het fragment. Dit kenmerk is verplicht. |
Auteur | De auteur van het fragment. |
kortere weg | Is de snelkoppeling die u kunt gebruiken voor het genereren van de code. Merk op dat dit alleen letters en cijfers kan bevatten en moet beginnen met een letter. Opmerking: vergeet niet om het fragment een goede en unieke naam en snelkoppeling te geven. Anders geeft het problemen wanneer u het fragment in Visual Studio importeert. |
Beschrijving | Geeft meer informatie over het fragment als u dat nodig hebt. |
HelpUrl | Een url voor een helppagina op internet. |
trefwoorden | Groepeert een of meer trefwoordelementen. |
SnippetTypes | Groepen
|
Brontabel (maar bewerkingen): msdn.microsoft.com
2. Fragment
In de snippet-tag kunt u drie verschillende tags gebruiken. Dit kan zijn:
- invoer
- verklaringen
- Code (verplicht)
- Referenties
Deze worden hieronder uitgelegd.
2.1 Invoer
Imports
bevatten de benodigde naamruimten die u nodig hebt voor de code. Gebruik de import-tag in deze tag en hier kunt u de benodigde naamruimten plaatsen, elk met de Namespace
-tag.
2.2 Verklaringen
Declarations
kunnen worden gebruikt voor het declareren van enkele letterlijke of objecten in uw code in de Code
tag. De kinderen zijn letterlijk en objecten.
Letterlijke en objecten definiëren de letterlijke en objecten van het codefragment dat u kunt bewerken. Functionaliteit is letterlijk en objecten zijn hetzelfde, maar het heeft een extra typebeperking.
De letterlijke en object-tag kan volgende kinderen bevatten:
-
ID
: de ID van de letterlijke (verplicht) -
Type
: het type van dat object inclusief naamruimte en klasse (vereist door objecten) -
ToolTip
: geeft een tip -
Default
: een standaardwaarde van dat object (vereist) -
Functions
In de fragmenten staan enkele vooraf gedefinieerde letterlijke woorden. Ze worden hieronder vermeld:
letterlijk | Details |
---|---|
$end$ | Markeert de locatie om de cursor te plaatsen nadat het codefragment is ingevoegd. |
$selected$ | Vertegenwoordigt tekst die is geselecteerd in het document dat moet worden ingevoegd in het fragment wanneer deze wordt opgeroepen. Bijvoorbeeld, als u: A $selected$ is an object that I like.en het woord was auto geselecteerd toen je de sjabloon opriep, zou je krijgen: A car is an object that I like. |
Functies in de letterlijke- of object-tag betekent dat u een functie kunt gebruiken voor het genereren van code, afhankelijk van een ander element. Er zijn drie functies die ik ken:
Functie | Beschrijving | Taal |
---|---|---|
GenerateSwitchCases (EnumerationLiteral) | Genereert een switch-instructie en een set case-instructies voor de leden van de opsomming die zijn opgegeven met de parameter EnumerationLiteral. De parameter EnumerationLiteral moet een verwijzing zijn naar een letterlijk opsomming of een opsommingstype. | Visual C # en Visual J # 1 |
ClassName() | Retourneert de naam van de klasse die het ingevoegde fragment bevat. | Visual C # en Visual J # 1 |
SimpleTypeName(TypeName) | Hiermee verkleint u de parameter TypeName naar de eenvoudigste vorm in de context waarin het fragment is aangeroepen. | Visueel C # |
1 alleen beschikbaar in Visual Studio 2005.
Brontabel : msdn.microsoft.com
Attributen voor de letterlijke en objectelementenDe tags Letterlijk en Object kunnen enkele optionele kenmerken hebben.
Attribuut | Beschrijving | Type |
---|---|---|
bewerkbare | Geeft aan of u het letterlijke kunt bewerken nadat het codefragment is ingevoegd. De standaardwaarde van dit kenmerk is true. | Boolean |
Brontabel : msdn.microsoft.com
2.3 Verwijzingen
Groepeert referentie-elementen die informatie bevatten over merkreferenties voor het codefragment. Dit kan volgende elementen bevatten:
- Merk: bevat de naam van het merk door het codefragment (verplicht)
- URL: bevat een website die meer informatie geeft over de montage
2.4 Code
Code is de code die u genereert tussen <![CDATA[
en ]]>
. Plaats de ID
van uw letterlijke waarde tussen dollartekens en Visual Studio zal u vragen deze standaardwaarde te wijzigen als de aangiften zijn ingevuld. Hier hebt u een voorbeeld voor C # en VB voor de snelkoppeling.
<!-- ... Other code ... --> <Declarations> <Literal> <Id>variablename</Id> <Default>_myproperty</Default> </Literal> <Literal> <Id>propertytype</Id> <Default>int</Default> </Literal> <Literal> <Id>propertyname</Id> <Default>myproperty</Default> </Literal> </Declarations> <Code Language="CSharp"> <![CDATA[ private $propertyvalue$ $variablename$; public $propertyvalue$ $propertyname$ { get { return $variablename$; } set { $Variablename$ = Value; } } ]]> </Code> <!-- ... Other code ... --> <Declarations> <Literal> <Id>variablename</Id> <Default>_myproperty</Default> </Literal> <Literal> <Id>propertytype</Id> <Default>int</Default> </Literal> <Literal> <Id>propertyname</Id> <Default>myproperty</Default> </Literal> </Declarations> <Code Language="VB"> <![CDATA[ Private $variablename$ As $propertyvalue$ Public Property $propertyname$ As $propertyvalue$ Get Return $variablename$ End Get Set (ByVal value As $propertyvalue$) $variablename$ = value End Set End Property ]]> </Code> <!-- ... Other code ... -->
In het vereiste taalkenmerk kunt u uw taal definiëren waar u het fragment maakt. U kunt de talen die u kunt gebruiken in de volgende tabel vinden.
Taal | keyword | Beschikbaar in volgende versies |
---|---|---|
Visueel C # | CSharp | 2005, 2010, 2012 en later |
Visual Basic | VB | 2005, 2010, 2012 en later |
XML | XML | 2005, 2010, 2012 en later |
Visueel J # | VJSharp | 2005, 2012 en later |
C ++ | CPP | 2012 en later |
JavaScript | JavaScript | 2012 en later |
JScript | JScript | 2012 en later |
SQL | SQL | 2012 en later |
HTML | HTML | 2012 en later |
CSS | CSS | 2012 en later |
XAML | XAML | 2012 en later |
Andere optionele kenmerken zijn:
Attribuut | Beschrijving |
---|---|
Delimiter | Geeft het scheidingsteken aan dat wordt gebruikt om literalen en objecten in de code te beschrijven. Het scheidingsteken is standaard $ . |
Soort | Specificeert het soort code dat het fragment bevat en daarom de locatie waar een codefragment moet worden ingevoegd om het codefragment te compileren. |
De geldige waarden voor de soortvariabele zijn:
Waarde | Beschrijving |
---|---|
methode lichaam | Geeft aan dat het codefragment een body van een methode is en daarom in een methodeverklaring moet worden ingevoegd. |
methode dec | Geeft aan dat het codefragment een methode is en daarom in een klasse of module moet worden ingevoegd. |
type dec | Geeft aan dat het codefragment een type is en daarom moet worden ingevoegd in een klasse, module of naamruimte. |
het dossier | Geeft aan dat het fragment een volledig codebestand is. Deze codefragmenten kunnen alleen in een codebestand of in een naamruimte worden ingevoegd. |
ieder | Geeft aan dat het fragment overal kan worden ingevoegd. Deze tag wordt gebruikt voor codefragmenten die contextonafhankelijk zijn, zoals opmerkingen. |
Brontabellen : msdn.microsoft.com
Importeer fragment in Visual Studio
Sla de XML-code op en geef deze de extensie
.snippet
.U kunt het nieuwe gemaakte fragment toevoegen aan Visual Studio door op Control + K , Control + B te drukken of naar "Tools" → "Code Snippets Manager ..." te gaan . Dit open volgende venster:
Kies de taal in het keuzevak voor welke taal je het fragment hebt gemaakt. klik op "Importeren ..." en kies het bestand dat u hebt gemaakt.
Klik op
"Finish"
. Als de bestandsnaam al is gebruikt, vraagt Visual Studio om het bestaande bestand te vervangen. Je hebt drie opties:- Overschrijven: overschrijft het bestand. U kunt deze optie gebruiken als u een oud fragment wilt bewerken.
- Naam wijzigen: gaat het bestand hernoemen naar een unieke naam.
- Overslaan: Annuleert het importeren. Hernoemt het bestand naar een unieke naam.
U kunt ook een nieuwe locatie toevoegen met alle fragmenten die u hebt gemaakt door in het eerste venster op de knop "Toevoegen ..." te klikken en de map in het "mapvenster selecteren" te selecteren . Het voordeel is nu dat wanneer een nieuw geldig fragment in die map wordt toegevoegd, u dit rechtstreeks in Visual Studio kunt gebruiken.
Opmerking: test na het importeren van uw fragment op fouten, zodat u geen problemen ondervindt wanneer u het fragment gebruikt. U kunt het fragment altijd verwijderen of overschrijven als er een fout is.
Belangrijk punt
U kunt ook de documentatie op MSDN bekijken voor meer informatie.
Hulpmiddelen voor samenvoegen / vergelijken overschrijven
Got to Tools | Opties | Broncontrole | Visual Studio Team Foundation Server
klik op de Configureer Gebruikersinstellingen:
U kunt afzonderlijke overschrijvingen toevoegen voor bewerkingen 'Vergelijken' en 'Samenvoegen'. Klik op Toevoegen en selecteer de bewerking die u wilt overschrijven. U moet het pad naar de tool typen die u gebruikt, en de exacte argumenten die uw tool verwacht. Om bijvoorbeeld BeyondCompare te gebruiken, voegt u de volgende argumenten "% 1% 2 / title1 =% 6 / title2 =% 7" toe:
Om samen te voegen met BeyondCompare gebruikt u de argumenten "% 1% 2% 3% 4 / title1 =% 6 / title2 =% 7 / title3 =% 8 / title4 =% 9"
In een blogpost uit 2006 onderzocht MS-medewerker James Manning de argumenten zoals verwacht door verschillende tools: WinDiff, DiffDoc, WinMerge, Beyond Compare, KDiff3, Araxis, Compare It !, SourceGear DiffMerge, TortoiseMerge en Visual SlickEdit. Het bericht is een goed startpunt, maar zorg ervoor dat u de bijgewerkte documentatie van uw tool controleert.
Het wordt sterk aangeraden niet te gebruiken voor het samenvoegen tools die niet in staat zijn 3-weg fuseert (bv WinMerge 2.x) zijn.
Entiteitskader
Entity Framework (EF) is een object-relationele mapper waarmee .NET-ontwikkelaars kunnen werken met relationele gegevens met behulp van domeinspecifieke objecten. Het elimineert de noodzaak voor het grootste deel van de gegevenstoegangscode die ontwikkelaars meestal moeten schrijven.
Met Entity Framework kunt u een model maken door code te schrijven of vakken en lijnen te gebruiken in de EF Designer. Beide benaderingen kunnen worden gebruikt om een bestaande database te targeten of een nieuwe database te maken.
Bron en meer informatie: Entity Framework-documentatie