Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Parâmetros substituíveis, ou tokens, podem ser usados dentro de arquivos de projeto para fornecer valores para itens de solução do SharePoint cujos valores reais não são conhecidos em tempo de design. Eles são semelhantes em função aos tokens de modelo padrão do Visual Studio. Para obter mais informações, consulte Parâmetros de modelo.
Formato do token
Os tokens começam e terminam com um caractere de cifrão ($). Na implantação, todos os tokens usados são substituídos por valores reais quando um projeto é empacotado em um pacote de solução do SharePoint (arquivo .wsp ). Por exemplo, o token $SharePoint.Package.Name$ pode resultar na cadeia de caracteres "Test SharePoint Package".
Regras de token
As seguintes regras se aplicam aos tokens:
Os tokens podem ser especificados em qualquer lugar de uma linha.
Os tokens não podem abranger várias linhas.
O mesmo token pode ser especificado mais de uma vez na mesma linha e no mesmo arquivo.
Diferentes tokens podem ser especificados na mesma linha.
Os tokens que não seguem essas regras são ignorados e não resultam em um aviso ou erro.
A substituição de tokens por valores de string é feita imediatamente após a transformação do manifesto. Essa substituição permite que o usuário edite os modelos de manifesto com tokens.
Resolução de nomes de token
Na maioria dos casos, um token é resolvido para um valor específico, independentemente de onde ele está contido. No entanto, se o token estiver relacionado a um pacote ou recurso, o valor do token dependerá de onde ele está contido. Por exemplo, se um recurso estiver no Pacote A, o token $SharePoint.Package.Name$ será resolvido para o valor "Pacote A". Se o mesmo recurso estiver no Pacote B, resolverá $SharePoint.Package.Name$ para "Pacote B".
Lista de tokens
A tabela a seguir lista os tokens disponíveis.
| Nome | Description |
|---|---|
| $SharePoint.Project.FileName$ | O nome do arquivo de projeto que contém, como NewProj.csproj. |
| $SharePoint.Project.FileNameWithoutExtension$ | O nome do arquivo de projeto que contém sem a extensão de nome de arquivo. Por exemplo, "NewProj". |
| $SharePoint.Project.AssemblyFullName$ | O nome de exibição (nome forte) da montagem de saída do projeto contido. |
| $SharePoint.Project.AssemblyFileName$ | O nome do assembly de saída do projeto que o contém. |
| $SharePoint.Project.AssemblyFileNameWithoutExtension$ | O nome do assembly de saída do projeto que contém, sem a extensão de nome de arquivo. |
| $SharePoint.Project.AssemblyPublicKeyToken$ | O token de chave pública do assembly de saída do projeto que contém, convertido em uma cadeia de caracteres. (16 caracteres no formato hexadecimal "x2"). |
| $SharePoint.Package.Name$ | O nome da embalagem que contém. |
| $SharePoint.Package.FileName$ | O nome do arquivo de definição do pacote que contém. |
| $SharePoint.Package.FileNameWithoutExtension$ | O nome (sem extensão) do arquivo de definição do pacote que contém. |
| $SharePoint.Package.Id$ | O ID do SharePoint do pacote que o contém. Se um recurso for usado em mais de um pacote, esse valor será alterado. |
| $SharePoint.Feature.FileName$ | O nome do arquivo de definição do recurso que contém, como Feature1.feature. |
| $SharePoint.Feature.FileNameWithoutExtension$ | O nome do ficheiro de definição de funcionalidade, sem a extensão do nome do ficheiro. |
| $SharePoint.Feature.DeploymentPath$ | O nome da pasta que contém o recurso no pacote. Esse token equivale à propriedade "Deployment Path" no Feature Designer. Um valor de exemplo é, "Project1_Feature1". |
| $SharePoint.Feature.Id$ | A ID do SharePoint do recurso que contém. Esse token, como todos os tokens de nível de recurso, pode ser usado apenas por arquivos incluídos em um pacote por meio de um recurso, não adicionados diretamente a um pacote fora de um recurso. |
| $SharePoint.ProjectItem.Name$ | O nome do item de projeto (não seu nome de arquivo), conforme obtido de ISharePointProjectItem.Name. |
| $SharePoint.Tipo.<GUID>.AssemblyQualifiedName$ | O nome qualificado do assembly do tipo correspondente ao GUID do token. O formato do GUID é minúsculo e corresponde ao formato Guid.ToString("D") (ou seja, xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx). |
| $SharePoint.Tipo.<GUID>. Nome Completo$ | O nome completo do tipo correspondente ao GUID no token. O formato do GUID é minúsculo e corresponde ao formato Guid.ToString("D") (ou seja, xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx). |
Adicionar extensões à lista de extensões de ficheiro para substituição de token
Embora os tokens possam teoricamente ser usados por qualquer arquivo que pertença a um item de projeto do SharePoint incluído no pacote, por padrão, o Visual Studio procura tokens somente em arquivos de pacote, arquivos de manifesto e arquivos que tenham as seguintes extensões:
XML
ASCX
ASPX
Webpart
DWP
Essas extensões são definidas pelo
<TokenReplacementFileExtensions>elemento no arquivo Microsoft.VisualStudio.SharePoint.targets, localizado na pasta ...\<program files>\MSBuild\Microsoft\VisualStudio\v11.0\SharePointTools.No entanto, você pode adicionar extensões de arquivo adicionais à lista. Adicione um elemento
<TokenReplacementFileExtensions>a qualquer PropertyGroup no ficheiro de projeto do SharePoint definido antes de <Import> do ficheiro de destinos do SharePoint.
Observação
Como a substituição de token ocorre depois que um projeto é compilado, você não deve adicionar extensões de arquivo para tipos de arquivo que são compilados, como .cs, .vb ou .resx. Os tokens são substituídos apenas em arquivos que não são compilados.
Por exemplo, para adicionar as extensões de nome de arquivo (.myextension e .yourextension) à lista de extensões de nome de arquivo de substituição de token, você adicionaria o seguinte a um arquivo de projeto (.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>
Você pode adicionar a extensão diretamente ao arquivo targets (.targets). No entanto, adicionar a extensão altera a lista de extensões para todos os projetos do SharePoint empacotados no sistema local, não apenas o seu. Esta extensão pode ser conveniente quando é o único desenvolvedor no sistema ou se a maioria dos seus projetos o exigir. No entanto, como é específico do sistema, essa abordagem não é portátil e, portanto, é recomendável que você adicione quaisquer extensões ao arquivo de projeto.