Существует ли существующее определение препроцессора, которое можно использовать для включения условной компиляции на основе пустых ссылочных типов или нет?
Я использую Swashbuckle для генерации чванства. json, и, похоже, обнаружить обнуляемость на основе типов аргументов. Но так как мы еще не готовы использовать C# 8, мы не можем пометить типы как «не нулевые»
. Я хотел бы сделать что-то похожее на это (код взят из нашей реализации Swashbuckle IOperationFilter) :
#if !NULLABLE_REFERENCE_TYPES
foreach (var pParam in odataParams)
{
pParam.Style = ParameterStyle.Simple;
// Array is nullable, individiual array elements are not
if (pParam.Schema.Items.Type == "string")
{
// Remove when we kan use C# not-nullable feature
pParam.Schema.Items.Nullable = false;
}
}
#endif