Anmerkung
Der Zugriff auf diese Seite erfordert eine Genehmigung. Du kannst versuchen, dich anzumelden oder die Verzeichnisse zu wechseln.
Der Zugriff auf diese Seite erfordert eine Genehmigung. Du kannst versuchen , die Verzeichnisse 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.