Nota
O acceso a esta páxina require autorización. Pode tentar iniciar sesión ou modificar os directorios.
O acceso a esta páxina require autorización. Pode tentar modificar os directorios.
La FilePatternMatch.Stem propiedad se ha anotado previamente como que acepta valores NULL porque la propiedad a la PatternTestResult.Stem que obtiene su valor es que acepta valores NULL.
PatternTestResult Aunque puede ser null si el resultado no se realiza correctamente, nunca FilePatternMatch se debe a que solo se construye cuando PatternTestResult se realiza correctamente.
Para reflejar con precisión la nulabilidad, el [MemberNotNullWhen()] atributo se aplica a la PatternTestResult.Stem propiedad para indicar al compilador que no será NULL si se realiza correctamente. Además, el stem argumento pasado al FilePatternMatch constructor ya no admite valores NULL y se producirá una ArgumentNullException excepción si se pasa un valor NULL stem .
Versión introducida
.NET 10
Comportamiento anterior
Anteriormente, el FilePatternMatch constructor aceptó null para el stem parámetro sin advertencias o errores en tiempo de compilación o en tiempo de ejecución.
// Allowed in previous versions.
var match = new FilePatternMatch("path/to/file.txt", null);
La FilePatternMatch.Stem propiedad también se ha anotado como que acepta valores NULL.
Nuevo comportamiento
A partir de .NET 10, pasar un null valor o posiblemente nulo al stem argumento en el FilePatternMatch constructor produce una advertencia en tiempo de compilación. Y, si se pasa null, se lanza una excepción en tiempo de ejecución ArgumentNullException.
La FilePatternMatch.Stem propiedad ahora está anotada para indicar que el valor no será NULL si IsSuccessful es true.
// Generates compile-time warning.
var match = new FilePatternMatch("path/to/file.txt", null);
Tipo de cambio disruptivo
Este cambio puede afectar a la compatibilidad de origen y es un cambio de comportamiento.
Motivo del cambio
Las anotaciones de nulabilidad anteriores eran inexactas y un null valor para el stem argumento era inesperado, pero no se protegía correctamente. Este cambio refleja el comportamiento esperado de la API y protege contra un comportamiento imprevisible, al tiempo que también genera instrucciones en tiempo de diseño en torno al uso.
Acción recomendada
Si se pasó un valor posiblemente NULL para el argumento , revise el stem uso y actualice el sitio de llamada para asegurarse stem de que no se puede paTssed en como null.
Si aplicó supresiones de advertencia de nulabilidad al consumir la FilePatternMatch.Stem propiedad , puede quitar esas supresiones.