.NET 8.0으로 신규 프로젝트 개발중인데, string 변수만 쓰면 위에처럼 자꾸 표시되서 이게 갑자기 왜 뜨지? 라고 생각했었다. ( 이전엔 .NET Framework 로만 개발했었음)
찾아보니까
.NET Core 3.0부터 nullable reference types이 도입되었고, 그래서 string?처럼 nullable 표시를 하지 않으면 컴파일러가 경고를 낸다고 하였다.
이를 관리하려면 프로젝트 파일에 <Nullable>enable</Nullable> 또는 <Nullable>disable</Nullable>를 설정을 하면
nullable reference types 기능을 활성화하거나 비활성화할 수 있다.
.NET 6, 이전에는 <Nullable>enable</Nullable>이 없어서 직접 추가했어야 했는데, 이후에는 projects에 이 속성이 포함이라 .csproj 파일을 열고 disable로 변경해주면 경고가 안뜬다.