Estoy tratando de encontrar el estado de los ensamblajes del sistema .NET con respecto a la característica de tipos de referencia anulables de C# 8.
El código no anotado o el código escrito con versiones de idiomas anteriores se tratará como "olvidable de nulos", lo que significa que el compilador no generará ninguna advertencia con respecto a la nulabilidad.
Esto es realmente molesto cuando se trata de usar ensamblajes del sistema desde un contexto habilitado que acepta valores NULL, ya que no hay forma de saber si se requiere o no la comprobación de valores NULL.
¿Hay alguna forma de verificar si un ensamblaje está anotado para tipos de referencia anulables?
¿O hay alguna página de estado oficial sobre esto?
En VS 16.10, debería poder ver si la nulabilidad se habilitó en un ensamblado externo usando ir a definición en un símbolo de ese ensamblado que está usando en su código. Si se habilitó la nulabilidad, debería ver #nullable enable en la parte superior del archivo. Esto también parece funcionar en VS Code cuando se usa la última extensión de C#.
Tenga en cuenta que en VS esto actualmente requiere deshabilitar la "navegación a fuentes descompiladas (experimental)" en Opciones -> Editor de texto -> C # -> Avanzado.
En cuanto a una página de estado, podría ser útil revisar este problema en el repositorio de tiempo de ejecución de dotnet, que describe cuándo ciertos ensamblajes del sistema fueron anotados como anulables.