Я предпочитаю Environment.NewLine
, чем "\r\n"
, когда это возможно, хотя этот проект предназначен только для Windows.Мне было интересно, если есть способ использовать его в качестве значения по умолчанию для необязательного параметра.
Рассмотрим метод расширения
public static string ToSummaryString<T>(
this IEnumerable<T> items,
string delimiter = Environment.NewLine)
и ошибка времени компиляции
Значение параметра по умолчанию для 'delimiter' должно быть константой времени компиляции
Я тоже пытался использовать атрибуты параметров с похожей судьбой
public static string ToSummaryString<T>(
this IEnumerable<T> items,
[Optional, DefaultParameterValue(Environment.NewLine)] string delimiter)
Anаргумент атрибута должен быть константным выражением, выражением typeof или выражением создания массива типа параметра атрибута
Так есть ли обходной путь?Или мои единственные варианты жестко закодировать его в "\r\n"
или сделать его обязательным?