es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

.Net 6 no emite una advertencia para todos los tipos de valores nulos.

Utilizando <Nullable>enable</Nullable> de Net 6, tengo la clase:

public class File {
  public Int32 Id { get; set; }
  public Byte[] Content { get; set; }
  public DateTime Created { get; set; }
  public Guid Key { get; set; }
  public String Name { get; set; }

  public FileType FileType { get; set; }
}

¿Por qué recibo la advertencia

La propiedad no anulable '...' debe contener un valor no nulo al salir del constructor. Considere declarar la propiedad como anulable.

en todas las propiedades excepto en:

Int32 Id
DateTime Created
Guid Key
Tags:  , , ,

Answer

  1. Avatar for davy.ai

    El aviso aparece porque las propiedades Content, Name y FileType no son de tipo nullable y no están inicializadas en el constructor. Esto puede causar una excepción de referencia nula en tiempo de ejecución si se utilizan sin asignarles un valor. Para resolver el aviso, se debe inicializarlas en el constructor o declararlas como nullable con ? o utilizando el atributo DefaultValueAttribute. Sin embargo, es importante considerar si tiene sentido que estas propiedades sean nullable o si siempre deben tener un valor asignado.

Comments are closed.