Propriedade Globals.VariablePersists
O VariablePersists a propriedade se aplica a vários tipos de Globals objetos. Para o DTE.Globals o objeto, ele obtém ou define se a variável é mantida pelo ambiente e está disponível entre as sessões do ambiente. Para o Solution.Globals o objeto, ele obtém ou define se a variável é mantida pelo ambiente e está disponível entre sessões do ambiente e entre o carregamento e descarregamento da solução. Para o Project.Globals o objeto, ele obtém ou define se a variável é mantida pelo ambiente do arquivo de projeto.
Namespace: EnvDTE
Assembly: EnvDTE (em EnvDTE.dll)
Sintaxe
'Declaração
Property VariablePersists ( _
VariableName As String _
) As Boolean
Get
Set
bool this[
string VariableName
] { get; set; }
property bool VariablePersists[String^ VariableName] {
bool get (String^ VariableName);
void set (String^ VariableName, bool value);
}
abstract VariablePersists : bool with get, set
O JScript não oferece suporte a propriedades indexadas.
Parâmetros
- VariableName
Tipo: System.String
Obrigatório.Representa o nome da variável para manter.
Valor de propriedade
Tipo: System.Boolean
Um valor booleano indicando se existe ou não uma variável.VariablePersistsRetorna true se existe uma variável, caso contrário retorna false.
Comentários
Embora as variáveis globais sempre persistem dentro de uma sessão de Visual Studio, VariablePersists permite que essas variáveis persistem entre sessões.
Observação |
---|
Para salvar variáveis com uma solução específica, use DTE.Solution.Globals. |
Se a variável não existir, VariablePersists retorna false.
Para o Solution objeto (Solution.Globals), os dados são salvos sempre que a solução é salvo. Modificando o Globals objeto faz com que o arquivo de solução ficar marcado como editado (ou "dirty"). Para o DTE objeto (DTE.Globals), tanto quando os dados são salvos na Visual Studio ambiente está desligado ou quando uma solução é salva. Em ambos os casos, os dados são armazenados no arquivo de solução (. sln) ou no arquivo de armazenamento estruturado no diretório de perfis de usuário.
Quando o ambiente é desligado ou Save All ocorre, todos os valores globais são salvos. Se VariablePersists está associado a DTE o objeto, o valor é salvo no diretório de opções do usuário, da Visual Studio ambiente.
Se a variável global está associada a Solution o objeto, em seguida, o valor é salvo no arquivo de solução (. sln). Os valores são salvas a qualquer momento em que o ambiente grava o arquivo. sln.
Quaisquer variáveis salvos substituem valores salvos anteriormente. Para remover uma variável do arquivo salvo, defina VariablePersists para false. O ambiente removerá o seu valor durante o próximo Save operação.
Observação |
---|
VariableValuenomes não podem conter espaços. Se houver, você obtém o erro, o valor não recai no intervalo esperado. |
Exemplos
Sub OnAddinLoaded(ByVal dte As DTE)
' Count the number of times an add-in is loaded
' and store the value in the solution.
Dim globals As Globals
globals = dte.Solution.Globals
If globals.VariableExists("AddinLoadCounter") Then
' The counter has already been set, so increment it.
Dim int32 As System.Int32
int32 = System.Int32.Parse(CStr(globals("AddinLoadCounter")))
int32 += 1
globals("AddinLoadCounter") = int32.ToString()
Else
' Counter has never been set, so create and initialize it.
globals("AddinLoadCounter") = 1.ToString()
globals.VariablePersists("AddinLoadCounter") = True
End If
MsgBox("This add-in has been loaded: " & _
globals.VariableValue("AddinLoadCounter") & " times.")
End Sub
void OnAddinLoaded(_DTE applicationObject)
{
// Count the number of times an add-in is loaded
// and store the value in the solution.
Globals globals;
globals = applicationObject.Solution.Globals;
if(globals.get_VariableExists("AddinLoadCounter"))
{
// The counter has already been set, so increment it.
System.Int32 int32;
int32 = System.Int32.Parse((string)
globals["AddinLoadCounter"]);
int32++;
globals["AddinLoadCounter"] = int32.ToString();
}
else
{
// Counter has never been set, so create and initialize it.
globals["AddinLoadCounter"] = 1.ToString();
globals.set_VariablePersists("AddinLoadCounter", true);
}
System.Windows.Forms.MessageBox.Show("This add-in has been loaded:
" + globals.VariableValue["AddinLoadCounter"] + " times.");
}
Segurança do .NET Framework
- Confiança total para o chamador imediato. O membro não pode ser usado por código parcialmente confiável. Para obter mais informações, consulte Usando bibliotecas de código parcialmente confiáveis.
Consulte também
Referência
Outros recursos
Informações persistentes em projetos e soluções
Como: compilar e Executar a automação de exemplos de Código do modelo de objeto