Если я попытаюсь
const char NoChar = (char)8470; //№
const char TmChar = (char)8482; //™
const string IdDisplayName = "Clements" + TmChar + ' ' + NoChar;
, он выдаст ошибку компиляции:
Выражение, присваиваемое '{0}', должно быть постоянным
Насколько я понимаю, эта ошибка возникает из-за того, что когда char является причиной, потому что оператор конкатенации строк (+
) внутренне вызывает ToString
для связанного объекта.
Мой вопрос: есть лиспособ (неуправляемый?
) сделать это.
Мне нужно передать эту константу в качестве атрибута, и она должна быть сгенерирована на клиенте.
Более уродливый обходной путь (увидим, на чем уродливеев ваших ответах ...) это подкласс этого атрибута (который запечатан, должен будет выполнить некоторую декомпиляцию и копировать-вставить работу), и встраивание его как неконстантного будет возможно.