Właściwość Globals.VariablePersists —
VariablePersists Właściwość stosuje się do kilku typów Globals obiektów.Dla DTE.Globals obiekt pobiera lub ustawia, czy zmienna jest zachowywana przez środowisko naturalne i jest dostępny między sesjami środowiska.Dla Solution.Globals obiekt pobiera lub ustawia, czy zmienna jest zachowywana przez środowisko naturalne i jest dostępny, między sesjami środowiska naturalnego oraz między załadunku i rozładunku roztworu.Dla Project.Globals obiekt pobiera lub ustawia, czy zmienna jest zachowywana przez środowiska w pliku projektu.
Przestrzeń nazw: EnvDTE
Zestaw: EnvDTE (w EnvDTE.dll)
Składnia
'Deklaracja
Property VariablePersists ( _
VariableName As String _
) As Boolean
bool this[
string VariableName
] { get; set; }
property bool VariablePersists[String^ VariableName] {
bool get (String^ VariableName);
void set (String^ VariableName, bool value);
}
abstract VariablePersists :
VariableName:string -> bool with get, set
Język JScript nie obsługuje właściwości indeksowanych.
Parametry
VariableName
Typ: StringWymagane.Reprezentuje nazwę zmiennej, aby zachować.
Wartość właściwości
Typ: Boolean
Wartość logiczna wskazująca, czy nie istnieje zmienna. VariablePersists Zwraca true , jeśli istnieje zmienna, w przeciwnym razie zwraca false.
Uwagi
Chociaż zmienne globalne są zawsze utrzymują w ramach sesji z Visual Studio, VariablePersists umożliwia tych zmiennych do utrwalania między sesjami.
[!UWAGA]
Aby zapisać zmiennych z danego rozwiązania, należy użyć DTE.Solution.Globals.
Jeśli zmienna nie istnieje, VariablePersists zwraca false.
Dla Solution obiektu (Solution.Globals), dane są zapisywane w każdym przypadku, gdy roztwór jest zapisywany.Modyfikowanie Globals obiektu powoduje, że plik rozwiązania, które stają się oznaczone jako edycji (lub "dirty").Dla DTE obiektu (DTE.Globals), dane są zapisywane albo gdy Visual Studio środowisko jest wyłączony lub gdy roztwór jest zapisywany.W obu przypadkach dane są przechowywane w pliku rozwiązania (.sln) lub w pliku składowania strukturalnego w katalogu profili użytkownika.
Podczas zamykania środowiska lub Save All występuje zapisywane są wszystkie wartości globalnych.Jeśli VariablePersists jest skojarzony z DTE obiektu w katalogu opcje użytkownika jest zapisywana wartość Visual Studio środowiska.
Jeśli zmienna globalna jest skojarzony z Solution obiekt, a następnie wartość jest zapisywany w pliku rozwiązania (.sln).Wartości są zapisywane w dowolnym momencie środowiska zapisuje plik .sln.
Wszystkie zmienne zapisane zastąpienie poprzednio zapisane wartości.Aby usunąć zmienną z zapisanego pliku, należy ustawić VariablePersists do false.Środowiska spowoduje usunięcie jej wartość podczas następnego Save operacji.
[!UWAGA]
VariableValuenazwy nie mogą zawierać spacji.Jeżeli tak, komunikat o błędzie, wartość nie wchodzą w zakres oczekiwanego.
Przykłady
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.");
}
Zabezpieczenia programu .NET Framework
- Pełne zaufanie do bezpośredniego wywołującego. Tego elementu członkowskiego nie można używać w kodzie częściowo zaufanym. Aby uzyskać więcej informacji, zobacz Używanie bibliotek pochodzących z częściowo zaufanego kodu.
Zobacz też
Informacje
Inne zasoby
Przechowywanie informacji w projektach i rozwiązaniach
Porady: kompilowanie i uruchamianie kodu modelu obiektów automatyzacji — przykłady