CA2265: No comparar Span<T>
con null
o default
Propiedad | Value |
---|---|
Identificador de la regla | CA2264 |
Título | No comparar Span<T> con null o default |
Categoría | Uso |
La corrección es problemática o no problemática | Poco problemático |
Habilitado de forma predeterminada en .NET 9 | Como advertencia |
Una Span<T> instancia se compara con null
o default
.
Comparar un intervalo con null
o default
podría no hacer lo que pretendía. default
y el null
literal se convierten implícitamente en Span<T>.Empty
.
Quite la comparación redundante o haga que el código sea más explícito llamando IsEmpty a en su lugar.
El siguiente fragmento de código muestra dos infracciones de CA2265 y la corrección de las infracciones.
Span<int> span = new([1, 2, 3]);
// CA2265 violation.
if (span == null) { }
// CA2265 violation.
if (span == default) { }
// Fixes the violation.
if (span.IsEmpty) { }
Es seguro suprimir esta advertencia si quiere comparar el intervalo con el intervalo vacío.
Si solo quiere suprimir una única infracción, agregue directivas de preprocesador al archivo de origen para deshabilitar y volver a habilitar la regla.
#pragma warning disable CA2265
// The code that's violating the rule is on this line.
#pragma warning restore CA2265
Para deshabilitar la regla de un archivo, una carpeta o un proyecto, establezca su gravedad en none
del archivo de configuración.
[*.{cs,vb}]
dotnet_diagnostic.CA2265.severity = none
Para obtener más información, consulte Procedimiento para suprimir advertencias de análisis de código.
Comentarios de .NET
.NET es un proyecto de código abierto. Seleccione un vínculo para proporcionar comentarios: