Как определить возможность обнуления (NRT) типа T (НЕ дублировать) ⇐ C#
-
Гость
Как определить возможность обнуления (NRT) типа T (НЕ дублировать)
Если у меня есть такой класс:
публичный класс Something { общественный Тип SaveType {получить; набор; } публичное что-то() { SaveType = Тип(T); } } Если кто-то назовет это как new Something(), то SaveType будет Nullable Но если кто-то назовет это как new Something(), тогда SaveType — это просто String. Очевидно, это потому, что строка является ссылочным типом. Но я хочу, чтобы мой класс знал, что человек ожидает этого как НЗТ. Так как же мне узнать, как это назвал потребитель?
Другие (казалось бы, повторяющиеся, но нет?) ответы говорят об использовании NullabilityInfoContext для выяснения типов свойств, событий, параметров и т. д. Но я не вижу, как это использовать здесь.
Если у меня есть такой класс:
публичный класс Something { общественный Тип SaveType {получить; набор; } публичное что-то() { SaveType = Тип(T); } } Если кто-то назовет это как new Something(), то SaveType будет Nullable Но если кто-то назовет это как new Something(), тогда SaveType — это просто String. Очевидно, это потому, что строка является ссылочным типом. Но я хочу, чтобы мой класс знал, что человек ожидает этого как НЗТ. Так как же мне узнать, как это назвал потребитель?
Другие (казалось бы, повторяющиеся, но нет?) ответы говорят об использовании NullabilityInfoContext для выяснения типов свойств, событий, параметров и т. д. Но я не вижу, как это использовать здесь.
Мобильная версия