Anteckning
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Ersättningsbara parametrar, eller token, kan användas i projektfiler för att ange värden för SharePoint-lösningsobjekt vars faktiska värden inte är kända vid designtillfället. De liknar standardtoken för Visual Studio-mallar i funktion. Mer information finns i Mallparametrar.
Tokenformat
Token börjar och slutar med ett dollartecken ($). Vid distribution ersätts alla token som används med faktiska värden när ett projekt paketeras i ett SharePoint-lösningspaket (.wsp-fil ). Token $SharePoint.Package.Name$ kan till exempel matcha till strängen "Test SharePoint Package".
Tokenregler
Följande regler gäller för token:
Token kan anges var som helst på en rad.
Token kan inte sträcka sig över flera rader.
Samma token kan anges mer än en gång på samma rad och i samma fil.
Olika token kan anges på samma rad.
Token som inte följer dessa regler ignoreras och resulterar inte i en varning eller ett fel.
Bytet av token med strängvärden görs omedelbart efter manifesttransformeringen. Med den här ersättningen kan användaren redigera manifestmallarna med token.
Upplösning av tokennamn
I de flesta fall matchas en token till ett specifikt värde oavsett var den finns. Men om token är relaterad till ett paket eller en funktion beror tokens värde på var den finns. Om en funktion till exempel finns i Paket A matchas token $SharePoint.Package.Name$ till värdet "Paket A". Om samma funktion finns i paket B matchas $SharePoint.Package.Name$ till "Paket B".
Lista över token
I följande tabell visas tillgängliga token.
| Namn | Description | 
|---|---|
| $SharePoint.Project.FileName$ | Namnet på den innehållande projektfilen, till exempel NewProj.csproj. | 
| $SharePoint.Project.FileNameWithoutExtension$ | Namnet på den innehållande projektfilen utan filnamnstillägget. Till exempel "NewProj". | 
| $SharePoint.Project.AssemblyFullName$ | Visningsnamnet (starkt namn) för det innehållande projektets utdatasammansättning. | 
| $SharePoint.Project.AssemblyFileName$ | Namnet på det innehållande projektets utdatasammansättning. | 
| $SharePoint.Project.AssemblyFileNameWithoutExtension$ | Namnet på det innehållande projektets utdatasammansättning, utan filnamnstillägget. | 
| $SharePoint.Project.AssemblyPublicKeyToken$ | Den offentliga nyckeltoken för det innehållande projektets utdatasammansättning, konverterad till en sträng. (16 tecken i hexadecimalt format.) | 
| $SharePoint.Package.Name$ | Namnet på det innehållande paketet. | 
| $SharePoint.Package.FileName$ | Namnet på det innehållande paketets definitionsfil. | 
| $SharePoint.Package.FileNameWithoutExtension$ | Namnet (utan tillägg) på det innehållande paketets definitionsfil. | 
| $SharePoint.Package.Id$ | SharePoint-ID:t för det innehållande paketet. Om en funktion används i mer än ett paket ändras det här värdet. | 
| $SharePoint.Feature.FileName$ | Namnet på definitionsfilen för den innehållande funktionen, till exempel Feature1.feature. | 
| $SharePoint.Feature.FileNameWithoutExtension$ | Namnet på funktionsdefinitionsfilen utan filnamnstillägget. | 
| $SharePoint.Feature.DeploymentPath$ | Namnet på mappen som innehåller funktionen i paketet. Detta token motsvarar egenskapen "Distributionssökväg" i Funktionsdesignern. Ett exempelvärde är "Project1_Feature1". | 
| $SharePoint.Feature.Id$ | SharePoint-ID för den innehållande funktionen. Den här token, precis som med alla token på funktionsnivå, kan endast användas av filer som ingår i ett paket via en funktion, inte läggs till direkt i ett paket utanför en funktion. | 
| $SharePoint.ProjectItem.Name$ | Namnet på projektobjektet (inte dess filnamn), som hämtats från ISharePointProjectItem.Name. | 
| $SharePoint.Type.<GUID>.AssemblyQualifiedName$ | Det sammansättningskvalificerade namnet för den typ som matchar tokenens GUID. Formatet för GUID är gemener och motsvarar formatet Guid.ToString("D") (dvs. xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx). | 
| $SharePoint.Type.<GUID>.FullName$ | Det fullständiga namnet på den typ som matchar GUID i token. Formatet för GUID är gemener och motsvarar formatet Guid.ToString("D") (dvs. xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx). | 
Lägga till tillägg i listan med filnamnstillägg för tokenbyte
Även om token teoretiskt sett kan användas av alla filer som tillhör ett SharePoint-projektobjekt som ingår i paketet, söker Visual Studio som standard endast efter token i paketfiler, manifestfiler och filer som har följande tillägg:
XML
ASCX
ASPX
Webbkomponent
DWP
Dessa tillägg definieras av elementet
<TokenReplacementFileExtensions>i filen Microsoft.VisualStudio.SharePoint.targets, som finns i mappen ...\<program files>\MSBuild\Microsoft\VisualStudio\v11.0\SharePointTools.Du kan dock lägga till ytterligare filnamnstillägg i listan. Lägg till ett
<TokenReplacementFileExtensions>element i valfri PropertyGroup i SharePoint-projektfilen som definieras före <import> av SharePoint-målfilen.
Anmärkning
Eftersom tokenbyte sker när ett projekt har kompilerats bör du inte lägga till filnamnstillägg för filtyper som kompileras, till exempel .cs, .vb eller .resx. Token ersätts endast i filer som inte kompileras.
Om du till exempel vill lägga till filnamnstilläggen (.myextension och .yourextension) i listan över filnamnstillägg för tokenersättning lägger du till följande i en projektfil (.csproj):
<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
  <PropertyGroup>
    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
.
.
.
    <!-- Define the following property to add your extension to the list of token replacement file extensions.  -->
<TokenReplacementFileExtensions>myextension;yourextension</TokenReplacementFileExtensions>
</PropertyGroup>
Du kan lägga till tillägget direkt i målfilen (.targets). Om du lägger till tillägget ändras dock tilläggslistan för alla SharePoint-projekt som paketeras i det lokala systemet, inte bara dina egna. Det här tillägget kan vara praktiskt när du är den enda utvecklaren i systemet eller om de flesta av dina projekt kräver det. Men eftersom det är systemspecifikt är den här metoden inte portabel, och därför rekommenderar vi att du lägger till eventuella tillägg i projektfilen i stället.