Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Unterstützung wurde hinzugefügt, um es zu ermöglichen, eine Umgebungsvariablen mithilfe von Environment.SetEnvironmentVariable(String, String) auf eine leere Zeichenfolge festzulegen. Im Rahmen dieser Maßnahme wurde das Verhalten des Festlegens der Eigenschaften ProcessStartInfo.Environment und ProcessStartInfo.EnvironmentVariables geändert, um mit dem Verhalten von Environment.SetEnvironmentVariable(String, String) konsistent zu sein.
Vorheriges Verhalten
Bislang galt:
- Durch
Environment.SetEnvironmentVariable("TEST", string.Empty)undEnvironment.SetEnvironmentVariable("TEST", null)wurde die Umgebungsvariable gelöscht. - Durch
ProcessStartInfo.Environment["TEST"] = string.EmptyundProcessStartInfo.Environment["TEST"] = nullwurde die Umgebungsvariable im untergeordneten Prozess auf einen leeren Wert festgelegt.
Neues Verhalten
Ab .NET 9 gilt:
- Durch
Environment.SetEnvironmentVariable("TEST", string.Empty)wird der Umgebungsvariablenwert auf einen leeren Wert festgelegt. Das Verhalten vonEnvironment.SetEnvironmentVariable("TEST", null)bleibt unverändert (sprich: die Umgebungsvariable wird weiterhin gelöscht). - Durch
ProcessStartInfo.Environment["TEST"] = nullwird die Umgebungsvariable gelöscht. Das Verhalten vonProcessStartInfo.Environment["TEST"] = string.Emptybleibt unverändert (sprich: die Umgebungsvariable wird weiterhin auf einen leeren Wert festgelegt).
Eingeführt in Version
.NET 9 Preview 6
Typ des Breaking Changes
Diese Änderung ist eine Verhaltensänderung.
Grund für die Änderung
Vor dieser Änderung war es nicht möglich, eine Umgebungsvariable mithilfe von Environment.SetEnvironmentVariable(String, String) auf einen leeren Wert festzulegen, was auf allen unterstützten Plattformen ein gültiger Umgebungsvariablenwert ist.
Empfohlene Maßnahme
Wenn Sie eine Umgebungsvariable mithilfe von Environment.SetEnvironmentVariable(String, String)löschen möchten, ändern Sie Ihren Code, um null anstelle von string.Empty als Wertargument zu übergeben.
Wenn Sie die Umgebungsvariable mithilfe von ProcessStartInfo.Environment oder ProcessStartInfo.EnvironmentVariables auf einen leeren Wert festlegen möchten, ändern Sie Ihren Code so, dass diese Eigenschaften auf string.Empty anstatt auf null festgelegt werden.