В С# из ниоткуда появилась куча «необнуляемых» предупреждений. ⇐ C#

Место общения программистов C#
Anonymous
В С# из ниоткуда появилась куча «необнуляемых» предупреждений.

Сообщение Anonymous »

Я только что обнаружил, что у меня было много предупреждений, подобных этому:

Предупреждение CS8625: невозможно преобразовать нулевой литерал в ссылочный тип, не допускающий значения NULL

Или

Необнуляемое поле «xxxxx» не инициализировано. Рассмотрите возможность объявления поля допускающим значение NULL.

И я действительно не понимаю, откуда это взялось. Оно присутствует буквально во всех свойствах класса, таких как строки или даже пользовательские типы.
Например, первое предупреждение выше я получаю с помощью следующего кода:

Код: Выделить всё

class Foo {
private Foo foo = null;
}
И я получаю второе предупреждение для нескольких свойств, таких как:

Код: Выделить всё

private SQLiteAsyncConnection database;
Но здесь нет причин, по которым Foo или SQLiteAsyncConnection считались бы ненулевыми. Раньше у меня никогда не было такого поведения.
И это не характерно для конкретного проекта. Я попробовал этот код в простом консольном приложении, и у меня то же самое.

Подробнее здесь: https://stackoverflow.com/questions/791 ... in-c-sharp

Вернуться в «C#»