Dela via


Vanliga MSBuild-projektobjekt

I MSBuild är ett objekt en namngiven referens till en eller flera filer. Objekt innehåller metadata som filnamn, sökvägar och versionsnummer. Alla projekttyper i Visual Studio har flera objekt gemensamt. Dessa objekt definieras i filen Microsoft.Build.CommonTypes.xsd.

I den här artikeln visas alla vanliga projektobjekt.

Reference

Representerar en sammansättningsreferens (hanterad) i projektet.

Objektmetadatanamn Beskrivning
HintPath Valfri sträng. Relativ eller absolut sökväg för sammansättningen.
Namn Valfri sträng. Visningsnamnet för sammansättningen, till exempel "System.Windows.Forms".
FusionName Valfri sträng. Anger det enkla eller starka fusionsnamnet för objektet.

När det här attributet finns kan det spara tid eftersom sammansättningsfilen inte behöver öppnas för att hämta fusionsnamnet.
SpecificVersion Valfritt booleskt värde. Anger om endast versionen i fusionsnamnet ska refereras till.
Alias Valfri sträng. Eventuella alias för referensen.
Privat Valfritt booleskt värde. Anger om referensen ska kopieras till utdatamappen. Det här attributet matchar egenskapen Kopiera lokal för referensen som finns i Visual Studio IDE.

COMReference

Representerar en com-komponentreferens (ohanterad) i projektet. Det här objektet gäller endast för .NET-projekt.

Objektmetadatanamn Beskrivning
Namn Valfri sträng. Komponentens visningsnamn.
GUID Obligatorisk sträng. Ett GUID för komponenten i formuläret {12345678-1234-1234-1234-123456781234}.
VersionMajor Obligatorisk sträng. Huvuddelen av komponentens versionsnummer. Till exempel "5" om det fullständiga versionsnumret är "5.46".
VersionMinor Obligatorisk sträng. Deldelen av komponentens versionsnummer. Till exempel "46" om det fullständiga versionsnumret är "5.46".
EmbedInteropTypes Valfritt booleskt värde. Om det är sant bäddar du in interop-typerna från den här referensen direkt i sammansättningen i stället för att generera en interop-DLL.
Lcid Valfri sträng. LocaleID för komponenten.
WrapperTool Valfri sträng. Namnet på det omslutningsverktyg som används på komponenten. Värden är:

1. Primär
2. tlbimp
3. primaryortlbimp
4. aximp
Isolerad Valfritt booleskt värde. Anger om komponenten är en regfri komponent.

COMFileReference

Representerar en lista över typbibliotek som skickas till parametern TypeLibFiles för ResolveComReference mål. Det här objektet gäller endast för .NET-projekt.

Objektmetadatanamn Beskrivning
WrapperTool Valfri sträng. Namnet på det omslutningsverktyg som används på komponenten. Värden är:

1. Primär
2. tlbimp
3. primaryortlbimp
4. aximp

NativeReference

Representerar en intern manifestfil eller en referens till en sådan fil.

Objektmetadatanamn Beskrivning
Namn Obligatorisk sträng. Basnamnet för manifestfilen.
HintPath Obligatorisk sträng. Den relativa sökvägen för manifestfilen.

ProjectReference

Representerar en referens till ett annat projekt. ProjectReference objekt omvandlas till Referens objekt av ResolveProjectReferences-målet, så giltiga metadata på en referens kan vara giltiga på ProjectReference, om omvandlingsprocessen inte skriver över den.

Objektmetadatanamn Beskrivning
Namn Valfri sträng. Referensens visningsnamn.
GlobalPropertiesToRemove Valfritt string[]. Namn på egenskaper som ska tas bort när du skapar det refererade projektet, till exempel RuntimeIdentifier;PackOnBuild. Standardvärdet är tomt.
Projekt Valfri sträng. Ett GUID för referensen i formuläret {12345678-1234-1234-1234-123456781234}.
OutputItemType Valfri sträng. Objekttyp som målutdata ska genereras till. Standardvärdet är tomt. Om referensmetadata är inställt på "true" (standard) blir målutdata referenser för kompilatorn.
ReferenceOutputAssembly Valfritt booleskt värde. Om värdet är inställt på falseinnehåller inte utdata från det refererade projektet som en Referens för det här projektet, men ser ändå till att det andra projektet skapas före det här projektet. Standardvärdet är true.
Privat Valfritt booleskt värde. Anger om referensen ska kopieras till utdatamappen. Det här attributet matchar egenskapen Kopiera lokal för referensen som finns i Visual Studio IDE.
SetConfiguration Valfri sträng. Anger den globala egenskapen Configuration för det refererade projektet, till exempel Configuration=Release.
SetPlatform Valfri sträng. Anger den globala egenskapen Platform för det refererade projektet, till exempel Platform=AnyCPU.
SetTargetFramework Valfri sträng. Anger den globala egenskapen TargetFramework för det refererade projektet, till exempel TargetFramework=netstandard2.0.
SkipGetTargetFrameworkProperties Valfritt booleskt värde. Om trueskapar du det refererade projektet utan att förhandla om det mest kompatibla TargetFramework värdet. Standardvärdet är false.
Mål Valfritt string[]. Semikolonavgränsad lista över mål i de refererade projekt som ska skapas. Standardvärdet är värdet för $(ProjectReferenceBuildTargets), som standard är tomt, vilket anger standardmålen. När du skapar i Visual Studio (till skillnad från MSBuild.exe eller dotnet build) förhindrar inte att Visual Studio anger standardmålen för det refererade projektet.

Not

Det finns en skillnad mellan hur projektreferenser fungerar mellan .NET Framework och .NET Core (inklusive .NET 5 och senare). I .NET Framework-projekt är projektreferenser inte transitiva. Om Project1 refererar till Project2 och Project2 refererar till Project3 kan du alltså inte koda mot Project3 från Project1. Men i .NET Core (inklusive .NET 5 och senare) är projektreferenser transitiva. Du kan koda mot Project3 i Project1.

Kompilera

Representerar kompilatorns källfiler.

Objektmetadatanamn Beskrivning
DependentUpon Valfri sträng. Anger vilken fil filen är beroende av för att kompilera korrekt.
Autogen Valfritt booleskt värde. Anger om filen genererades för projektet av Visual Studio Integrated Development Environment (IDE).
Länk Valfri sträng. Den notationella sökväg som ska visas när filen finns fysiskt utanför projektfilens påverkan.
Synlig Valfritt booleskt värde. Anger om filen ska visas i Solution Explorer i Visual Studio.
CopyToOutputDirectory Valfri sträng. Avgör om filen ska kopieras till utdatakatalogen. Värden är:

1. Aldrig
2. Alltid
3. PreserveNewest
4. IfDifferent

EmbeddedResource

Representerar resurser som ska bäddas in i den genererade sammansättningen.

Objektmetadatanamn Beskrivning
Kultur Valfri sträng. Anger resursfilens kultur. Om det anges härleder inte byggprocessen kulturen automatiskt baserat på filnamnstillägget (som är beroende av de kulturer som är tillgängliga för .NET/OS på den dator som är värd för bygget). Vi rekommenderar att du anger antingen Culture={culture identifier} eller WithCulture=false metadata.
WithCulture Valfri bool. Anger att filen är kulturneutral och att kulturidentifiering av AssignCulture uppgift ska hoppas över. Vi rekommenderar att du anger antingen Culture={culture identifier} eller WithCulture=false metadata.
DependentUpon Valfri sträng. Anger vilken fil filen är beroende av för att kompilera korrekt
Generator Valfri sträng. Namnet på alla filgeneratorer som körs på det här objektet.
LastGenOutput Valfri sträng. Namnet på filen som skapades av en filgenerator som kördes på det här objektet.
CustomToolNamespace Valfri sträng. Namnområdet där alla filgeneratorer som körs på det här objektet ska skapa kod.
Länk Valfri sträng. Notationssökvägen visas om filen finns fysiskt utanför projektets påverkan.
Synlig Valfritt booleskt värde. Anger om filen ska visas i Solution Explorer i Visual Studio.
CopyToOutputDirectory Valfri sträng. Avgör om filen ska kopieras till utdatakatalogen. Värden är:

1. Aldrig
2. Alltid
3. PreserveNewest
4. IfDifferent
LogicalName Obligatorisk sträng. Det logiska namnet på den inbäddade resursen.

Innehåll

Representerar filer som inte kompileras till projektet, men som kan bäddas in eller publiceras tillsammans med det.

Objektmetadatanamn Beskrivning
DependentUpon Valfri sträng. Anger vilken fil filen är beroende av för att kompilera korrekt.
Generator Valfri sträng. Namnet på alla filgeneratorer som körs på det här objektet.
LastGenOutput Valfri sträng. Namnet på filen som skapades av en filgenerator som kördes på det här objektet.
CustomToolNamespace Valfri sträng. Namnområdet där alla filgeneratorer som körs på det här objektet ska skapa kod.
Länk Valfri sträng. Den notationella sökväg som ska visas om filen finns fysiskt utanför projektets påverkan.
PublishState Obligatorisk sträng. Publiceringstillståndet för innehållet, antingen:

-Standard
-Inkluderad
-Utesluten
-Datafile
-Förutsättning
IsAssembly Valfritt booleskt värde. Anger om filen är en sammansättning.
Synlig Valfritt booleskt värde. Anger om filen ska visas i Solution Explorer i Visual Studio.
CopyToOutputDirectory Valfri sträng. Avgör om filen ska kopieras till utdatakatalogen. Värden är:

1. Aldrig
2. Alltid
3. PreserveNewest
4. IfDifferent
TargetPath Valfri sträng. Utdatasökvägen (i förhållande till konfigurations- och/eller plattformsspecifik utdatakatalog) för ett objekt, inklusive filnamnet. Detta respekterar Link metadata, om det tillhandahålls. Om TargetPath inte tillhandahålls beräknas det under byggprocessen. Se AssignTargetPath.

Ingen

Representerar filer som inte ska ha någon roll i byggprocessen.

Objektmetadatanamn Beskrivning
DependentUpon Valfri sträng. Anger vilken fil filen är beroende av för att kompilera korrekt.
Generator Valfri sträng. Namnet på alla filgeneratorer som körs på det här objektet.
LastGenOutput Valfri sträng. Namnet på filen som skapades av en filgenerator som kördes på det här objektet.
CustomToolNamespace Valfri sträng. Namnområdet där alla filgeneratorer som körs på det här objektet ska skapa kod.
Länk Valfri sträng. Den notationella sökväg som ska visas om filen finns fysiskt utanför projektets påverkan.
Synlig Valfritt booleskt värde. Anger om filen ska visas i Solution Explorer i Visual Studio.
CopyToOutputDirectory Valfri sträng. Avgör om filen ska kopieras till utdatakatalogen. Värden är:

1. Aldrig
2. Alltid
3. PreserveNewest
4. IfDifferent

AssemblyMetadata

Representerar sammansättningsattribut som ska genereras som [AssemblyMetadata(key, value)].

Objektmetadatanamn Beskrivning
Inbegripa Blir den första parametern (nyckeln) i AssemblyMetadataAttribute attributkonstruktorn.
Värde Obligatorisk sträng. Blir den andra parametern (värdet) i AssemblyMetadataAttribute attributkonstruktorn.

Not

Det här objektet gäller för projekt som använder SDK för .NET 5 (och .NET Core) och senare versioner.

InternalsVisibleTo

Anger sammansättningar som ska genereras som [InternalsVisibleTo(..)] sammansättningsattribut.

Objektmetadatanamn Beskrivning
Inbegripa Sammansättningsnamnet.
Nyckel Valfri sträng. Den offentliga nyckeln för sammansättningen.

Not

Det här objektet gäller för projekt som använder SDK för .NET 5 (och .NET Core) och senare versioner.

BaseApplicationManifest

Representerar basprogrammanifestet för bygget och innehåller säkerhetsinformation om ClickOnce-distributionen.

CodeAnalysisImportera

Representerar fxcop-projektet som ska importeras.

Import

Representerar sammansättningar vars namnområden ska importeras av Visual Basic-kompilatorn.

Mapp

Det här elementet används endast av Visual Studio som platshållare för en tom mapp. När mappen är ifylld ersätts den av ett annat element.

Se även