Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
In MSBuild is een item een benoemde verwijzing naar een of meer tekenreeksen, zoals bestandsnamen. Items bevatten metagegevens zoals bestandsnamen, paden en versienummers. Alle projecttypen in Visual Studio hebben verschillende items gemeen. Deze items worden gedefinieerd in het bestand Microsoft.Build.CommonTypes.xsd.
Dit artikel bevat alle algemene projectitems die zijn gedefinieerd in MSBuild zelf. Items en eigenschappen die door de .NET SDK worden geleverd, worden beschreven in MSBuild-naslaginformatie voor Microsoft.Net.Sdk.
MSBuild zelf stelt geen waarde in voor optionele metagegevens en niet-ingestelde metagegevens is gelijk aan een lege tekenreeks. Daarom is de standaardwaarde voor optionele metagegevens de lege tekenreeks. Metagegevenswaarden worden echter soms ingesteld in SDK-bestanden die impliciet worden geïmporteerd. De waarden zijn afhankelijk van de SDK waarnaar wordt verwezen.
Reference
Vertegenwoordigt een .NET Assembly-verwijzing (beheerd) in het project.
| Naam van metagegevens van item | Description |
|---|---|
| HintPath | Optionele tekenreeks. Relatief of absoluut pad van de assembly. |
| Name | Optionele tekenreeks. De weergavenaam van de assembly, bijvoorbeeld 'System.Windows.Forms'. |
| FusionName | Optionele tekenreeks. Hiermee geeft u de eenvoudige of sterke fusienaam voor het item. Wanneer dit kenmerk aanwezig is, kan het tijd besparen omdat het assemblybestand niet hoeft te worden geopend om de naam van de fusie op te halen. |
| SpecificVersion | Optionele Booleaanse waarde. Hiermee geeft u op of alleen naar de versie in de fusionnaam moet worden verwezen. |
| Aliases | Optionele tekenreeks. Alle aliassen voor de verwijzing. |
| Private | Optionele Booleaanse waarde. Hiermee geeft u op of de verwijzing naar de uitvoermap moet worden gekopieerd. Dit kenmerk komt overeen met de eigenschap Copy Local van de verwijzing in de Visual Studio IDE. Standaard ingesteld op false. |
Note
Het Reference itemtype kan ook worden gebruikt om te verwijzen naar vooraf gegenereerde wrapperassembly's voor systeemeigen COM-objecten, bijvoorbeeld als u hebt gebruikt tlbimp.exe om een PIA (Primary Interop Assembly) te genereren. Dit type verwijzing is een geschikte keuze wanneer u de COM-wrapper-assembly's zelf wilt genereren met bekende invoer, in plaats van te vertrouwen op het algoritme van MSBuild voor het genereren van COM-wrappers tijdens de build, wat een afhankelijkheid introduceert van de status van het systeemregister op de buildcomputer waarop MSBuild wordt uitgevoerd.
COMReference
Vertegenwoordigt een COM-componentverwijzing (onbeheerd) in het project. Dit item wordt gebruikt door de ResolveComReference-taak, waarmee de wrapperassembly's worden gegenereerd of, indien EmbedInteropTypes gebruikt, de interoptypen in uw assembly insluiten. Met dit type verwijzing wordt een afhankelijkheid van het systeemregister op de buildcomputer geïntroduceerd, die wordt gebruikt om het com-object waarnaar wordt verwezen, op te zoeken. COM-artefacten en COM-vermeldingen in het register kunnen wijzigen wanneer producten worden geïnstalleerd, bijgewerkt of verwijderd op de computer (of wanneer u dezelfde build uitvoert op een andere computer), waardoor mogelijk een andere wrapper-assembly wordt geproduceerd, zelfs als de buildlogica niet is gewijzigd.
Dit item is niet van toepassing op non-.NET projecten.
| Naam van metagegevens van item | Description |
|---|---|
| Name | Optionele tekenreeks. De weergavenaam van het onderdeel. |
| Guid | Vereiste tekenreeks. Een GUID voor het onderdeel, in de vorm {12345678-1234-1234-1234-123456781234}. |
| VersionMajor | Vereiste tekenreeks. Het belangrijkste deel van het versienummer van het onderdeel. Bijvoorbeeld '5' als het volledige versienummer 5.46 is. |
| VersionMinor | Vereiste tekenreeks. Het secundaire deel van het versienummer van het onderdeel. Bijvoorbeeld '46' als het volledige versienummer 5.46 is. |
| EmbedInteropTypes | Optionele Booleaanse waarde. Indien waar, sluit u de interoperabiliteitstypen uit deze verwijzing rechtstreeks in uw assembly in in plaats van een interop-DLL te genereren. |
| Lcid | Optionele tekenreeks. De LocaleID voor het onderdeel. |
| WrapperTool | Optionele tekenreeks. De naam van het wrapper-hulpprogramma dat wordt gebruikt voor het onderdeel. Waarden zijn: 1. primair 2. tlbimp 3. primaryortlbimp 4. aximp |
| Isolated | Optionele Booleaanse waarde. Hiermee geeft u op of het onderdeel een reg-free component is. Standaard ingesteld op false. |
Zie Problemen met COM-verwijzingen oplossen.
COMFileReference
Vertegenwoordigt een lijst met typebibliotheken waarnaar moet worden verwezen per bestandspad, in plaats van het systeemregister te gebruiken. Dit type verwijzing kan een goed alternatief zijn voor COMReference in gevallen waarin u een afhankelijkheid van het register van de buildcomputer wilt voorkomen, omdat het account waarmee de build wordt uitgevoerd, geen verhoogde bevoegdheden heeft om het register op de buildserver te bewerken, of u niet wilt dat de build afhankelijk is van de status van het register. Als u COMFileReference naar een artefact op een systeempad verwijst, heeft uw build een afhankelijkheid van de systeemstatus. Als het systeemartefact verandert vanwege een wijziging in de status van het systeem, zoals wanneer producten worden geïnstalleerd, bijgewerkt of verwijderd (of als u dezelfde build uitvoert op een andere computer), kan de wrapper-assembly worden gewijzigd, zelfs als de buildlogica niet is gewijzigd. Om een consistent buildresultaat te garanderen, kunt u een bekende kopie van het COM-artefact in de cache opslaan op een plaats die u beheert, zoals onder uw project- of oplossingsmap, en ernaar verwijzen in plaats van het systeemartefact.
Dit item is niet van toepassing op non-.NET projecten.
| Naam van metagegevens van item | Description |
|---|---|
| EmbedInteropTypes | Optionele Booleaanse waarde. Indien waar, sluit u de interoperabiliteitstypen uit deze verwijzing rechtstreeks in uw assembly in in plaats van een interop-DLL te genereren. De standaardwaarde is vals. |
| WrapperTool | Optionele tekenreeks. De naam van het wrapper-hulpprogramma dat wordt gebruikt voor het onderdeel. Waarden zijn: 1. primair 2. tlbimp 3. primaryortlbimp 4. aximp |
Zie Problemen met COM-verwijzingen oplossen.
NativeReference
Vertegenwoordigt een systeemeigen manifestbestand of een verwijzing naar een dergelijk bestand.
| Naam van metagegevens van item | Description |
|---|---|
| Name | Vereiste tekenreeks. De basisnaam van het manifestbestand. |
| HintPath | Vereiste tekenreeks. Het relatieve pad van het manifestbestand. |
ProjectReference
Vertegenwoordigt een verwijzing naar een ander project.
ProjectReferenceitems worden door het doel omgezet in ResolveProjectReferences, dus alle geldige metagegevens op een verwijzing kunnen geldig zijn voorProjectReference, als het transformatieproces deze niet overschrijft.
| Naam van metagegevens van item | Description |
|---|---|
| Name | Optionele tekenreeks. De weergavenaam van de verwijzing. |
| GlobalPropertiesToRemove | Optionele string[]. Namen van eigenschappen die moeten worden verwijderd bij het bouwen van het project waarnaar wordt verwezen, bijvoorbeeld RuntimeIdentifier;PackOnBuild. De standaardwaarde is leeg. |
| Project | Optionele tekenreeks. Een GUID voor de verwijzing, in de vorm {12345678-1234-1234-1234-123456781234}. |
| OutputItemType | Optionele tekenreeks. Itemtype om doeluitvoer naar te verzenden. De standaardwaarde is leeg. Als de referentiemetagegevens zijn ingesteld op 'true' (standaard), worden doeluitvoer verwijzingen voor de compiler. |
| ReferenceOutputAssembly | Optionele Booleaanse waarde. Als deze optie is ingesteld false, bevat dit niet de uitvoer van het project waarnaar wordt verwezen als verwijzing naar dit project, maar zorgt er nog steeds voor dat het andere project vóór dit project wordt gebouwd. Standaard ingesteld op true. |
| BuildReference | Optionele Booleaanse waarde. Standaard ingesteld op true. Indien ingesteld op false, wordt deze ProjectReference niet gebouwd door MSBuild. De standaarddoelen (zie 'Doelen' hieronder) worden helemaal niet aangeroepen. |
| Private | Optionele Booleaanse waarde. Hiermee geeft u op of de verwijzing naar de uitvoermap moet worden gekopieerd. Dit kenmerk komt overeen met de eigenschap Copy Local van de verwijzing in de Visual Studio IDE. |
| SetConfiguration | Optionele tekenreeks. Hiermee stelt u de globale eigenschap Configuration voor het project waarnaar wordt verwezen, bijvoorbeeld Configuration=Release. |
| SetPlatform | Optionele tekenreeks. Hiermee stelt u de globale eigenschap Platform voor het project waarnaar wordt verwezen, bijvoorbeeld Platform=AnyCPU. |
| SetTargetFramework | Optionele tekenreeks. Hiermee stelt u de globale eigenschap TargetFramework voor het project waarnaar wordt verwezen, bijvoorbeeld TargetFramework=netstandard2.0. |
| SkipGetTargetFrameworkProperties | Optionele Booleaanse waarde. Als true, bouwt u het project waarnaar wordt verwezen zonder de meest compatibele TargetFramework waarde te onderhandelen. Standaard ingesteld op false. |
| Targets | Optionele string[]. Door puntkomma's gescheiden lijst met doelen in de projecten waarnaar wordt verwezen, die moeten worden gebouwd. De standaardwaarde is de waarde van $(ProjectReferenceBuildTargets), die standaard leeg is, waarmee de standaarddoelen worden aangegeven. Wanneer u in Visual Studio bouwt (in plaats van MSBuild.exe of dotnet build), wordt hiermee niet voorkomen dat Visual Studio de standaarddoelen van het project waarnaar wordt verwezen, bouwt. |
Note
Er is een verschil tussen de werking van projectverwijzingen tussen .NET Framework en .NET Core (inclusief .NET 5 en hoger). In .NET Framework-projecten zijn projectverwijzingen niet transitief. Als Project1 verwijst naar Project2 en Project2 verwijst naar Project3, kunt u geen code uitvoeren voor Project3 vanuit Project1. In .NET Core (inclusief .NET 5 en hoger) zijn projectverwijzingen echter transitief. U kunt code uitvoeren op Project3 in Project1.
Compile
Vertegenwoordigt de bronbestanden voor de compiler.
| Naam van metagegevens van item | Description |
|---|---|
| DependentUpon | Optionele tekenreeks. Hiermee geeft u het bestand dat dit bestand is afhankelijk van het correct compileren. |
| AutoGen | Optionele Booleaanse waarde. Geeft aan of het bestand is gegenereerd voor het project door de IDE (Integrated Development Environment) van Visual Studio. Standaard ingesteld op false. |
| Link | Optionele tekenreeks. Het notatiepad dat moet worden weergegeven wanneer het bestand zich fysiek buiten de invloed van het projectbestand bevindt. |
| Visible | Optionele Booleaanse waarde. Geeft aan of het bestand moet worden weergegeven in Solution Explorer in Visual Studio. Standaard ingesteld op true. |
| CopyToOutputDirectory | Optionele tekenreeks. Bepaalt of het bestand naar de uitvoermap moet worden gekopieerd. Waarden zijn: 1. Nooit 2. Altijd 3. Nieuwste behouden 4. IfDifferent De standaardinstelling is als NeverDefineExplicitDefaults deze is ingesteld op true; anders wordt standaard de lege tekenreeks gebruikt. |
EmbeddedResource
Vertegenwoordigt resources die moeten worden ingesloten in de gegenereerde assembly.
| Naam van metagegevens van item | Description |
|---|---|
| Culture | Optionele tekenreeks. Hiermee geeft u de cultuur van het resourcebestand. Indien opgegeven, wordt de cultuur niet automatisch afgeleid door het buildproces op basis van de bestandsextensie (die afhankelijk is van de culturen die beschikbaar zijn voor .NET/OS op de computer waarop de build wordt gehost). Het instellen van Culture={culture identifier} of WithCulture=false metagegevens wordt ten zeerste aanbevolen. |
| WithCulture | Optioneel bool. Hiermee geeft u op dat het bestand cultuurneutraal is en cultuurdetectie door AssignCulture taak moet worden overgeslagen. Het instellen van Culture={culture identifier} of WithCulture=false metagegevens wordt ten zeerste aanbevolen. |
| DependentUpon | Optionele tekenreeks. Hiermee geeft u het bestand dat dit bestand afhankelijk is van het correct compileren |
| Generator | Optionele tekenreeks. De naam van een bestandsgenerator die op dit item wordt uitgevoerd. |
| LastGenOutput | Optionele tekenreeks. De naam van het bestand dat is gemaakt door een bestandsgenerator die op dit item is uitgevoerd. |
| CustomToolNamespace | Optionele tekenreeks. De naamruimte waarin een bestandsgenerator die op dit item wordt uitgevoerd, code moet maken. |
| Link | Optionele tekenreeks. Het notatiepad wordt weergegeven als het bestand zich fysiek buiten de invloed van het project bevindt. |
| Visible | Optionele Booleaanse waarde. Geeft aan of het bestand moet worden weergegeven in Solution Explorer in Visual Studio. |
| CopyToOutputDirectory | Optionele tekenreeks. Bepaalt of het bestand naar de uitvoermap moet worden gekopieerd. Waarden zijn: 1. Nooit 2. Altijd 3. Nieuwste behouden 4. IfDifferent De standaardinstelling is als NeverDefineExplicitDefaults deze is ingesteld op true; anders wordt standaard de lege tekenreeks gebruikt. |
| LogicalName | Vereiste tekenreeks. De logische naam van de ingesloten resource. |
Content
Vertegenwoordigt bestanden die niet in het project zijn gecompileerd, maar die samen met het project kunnen worden ingesloten of gepubliceerd.
| Naam van metagegevens van item | Description |
|---|---|
| DependentUpon | Optionele tekenreeks. Hiermee geeft u het bestand dat dit bestand is afhankelijk van het correct compileren. |
| Generator | Optionele tekenreeks. De naam van een bestandsgenerator die op dit item wordt uitgevoerd. |
| LastGenOutput | Optionele tekenreeks. De naam van het bestand dat is gemaakt door een bestandsgenerator die op dit item is uitgevoerd. |
| CustomToolNamespace | Optionele tekenreeks. De naamruimte waarin een bestandsgenerator die op dit item wordt uitgevoerd, code moet maken. |
| Link | Optionele tekenreeks. Het notatiepad dat moet worden weergegeven als het bestand zich fysiek buiten de invloed van het project bevindt. |
| PublishState | Vereiste tekenreeks. De publicatiestatus van de inhoud: - Standaard -Inbegrepen -Uitgesloten -Datafile -Voorwaarde |
| IsAssembly | Optionele Booleaanse waarde. Hiermee geeft u op of het bestand een assembly is. |
| Visible | Optionele Booleaanse waarde. Geeft aan of het bestand moet worden weergegeven in Solution Explorer in Visual Studio. |
| CopyToOutputDirectory | Optionele tekenreeks. Bepaalt of het bestand naar de uitvoermap moet worden gekopieerd. Waarden zijn: 1. Nooit 2. Altijd 3. Nieuwste behouden 4. IfDifferent De standaardinstelling is als NeverDefineExplicitDefaults deze is ingesteld op true; anders wordt standaard de lege tekenreeks gebruikt. |
| TargetPath | Optionele tekenreeks. Het uitvoerpad (ten opzichte van de configuratie- en/of platformspecifieke uitvoermap) van een item, inclusief de bestandsnaam. Dit respecteert de Link metagegevens, indien opgegeven. Als TargetPath niet is opgegeven, wordt dit berekend tijdens het buildproces. Zie AssignTargetPath. |
None
Vertegenwoordigt bestanden die geen rol moeten hebben in het buildproces.
| Naam van metagegevens van item | Description |
|---|---|
| DependentUpon | Optionele tekenreeks. Hiermee geeft u het bestand dat dit bestand is afhankelijk van het correct compileren. |
| Generator | Optionele tekenreeks. De naam van een bestandsgenerator die op dit item wordt uitgevoerd. |
| LastGenOutput | Optionele tekenreeks. De naam van het bestand dat is gemaakt door een bestandsgenerator die op dit item is uitgevoerd. |
| CustomToolNamespace | Optionele tekenreeks. De naamruimte waarin een bestandsgenerator die op dit item wordt uitgevoerd, code moet maken. |
| Link | Optionele tekenreeks. Het notatiepad dat moet worden weergegeven als het bestand zich fysiek buiten de invloed van het project bevindt. |
| Visible | Optionele Booleaanse waarde. Geeft aan of het bestand moet worden weergegeven in Solution Explorer in Visual Studio. |
| CopyToOutputDirectory | Optionele tekenreeks. Bepaalt of het bestand naar de uitvoermap moet worden gekopieerd. Waarden zijn: 1. Nooit 2. Altijd 3. Nieuwste behouden 4. IfDifferent De standaardinstelling is als NeverDefineExplicitDefaults deze is ingesteld op true; anders wordt standaard de lege tekenreeks gebruikt. |
AssemblyMetadata
Vertegenwoordigt assemblykenmerken die moeten worden gegenereerd als [AssemblyMetadata(key, value)].
| Naam van metagegevens van item | Description |
|---|---|
| Include | Wordt de eerste parameter (de sleutel) in de AssemblyMetadataAttribute kenmerkconstructor. |
| Value | Vereiste tekenreeks. Wordt de tweede parameter (de waarde) in de AssemblyMetadataAttribute kenmerkconstructor. |
Note
Dit item is van toepassing op projecten die gebruikmaken van de SDK voor .NET 5 (en .NET Core) en latere versies.
InternalsVisibleTo
Hiermee geeft u assembly's die moeten worden verzonden als [InternalsVisibleTo(..)] assemblykenmerken.
| Naam van metagegevens van item | Description |
|---|---|
| Include | De assemblynaam. |
| Key | Optionele tekenreeks. De openbare sleutel van de assembly. |
Note
Dit item is van toepassing op projecten die gebruikmaken van de SDK voor .NET 5 (en .NET Core) en latere versies.
BaseApplicationManifest
Vertegenwoordigt het basistoepassingsmanifest voor de build en bevat beveiligingsgegevens voor ClickOnce-implementatie.
CodeAnalysisImport
Vertegenwoordigt het FxCop-project dat moet worden geïmporteerd.
Import
Vertegenwoordigt assembly's waarvan de naamruimten moeten worden geïmporteerd door de Visual Basic-compiler.
Folder
Dit element wordt alleen door Visual Studio gebruikt als tijdelijke aanduiding voor een lege map. Wanneer de map is ingevuld, wordt deze vervangen door een ander element.