Возможно ли, что свойства ссылаются друг на друга во время создания
динамического объекта
анонимно типизированного объекта (т. Е. Внутри инициализатора объекта)? Мой упрощенный пример ниже требует повторного использования свойства Age
, не делая второго тяжелого вызова GetAgeFromSomewhere()
. Конечно, это не сработает. Любое предложение о том, как это сделать?Может ли свойства внутри инициализатора объекта ссылаться друг на друга?
var profile = new {
Age = GetAgeFromSomewhere(id),
IsLegal = (Age>18)
};
ли что-то подобное возможно или не возможно с
динамическими объектами
анонимно типизированных объектов Инициализаторы?
Назначить результат «GetAgeFromSomewhere» переменной в отдельном заявлении заранее. –
Эта проблема также не связана напрямую с динамическими типами, но инициализаторами. – CSharpie
@CSharpie Используя статически объявленный тип, OP мог бы просто сделать «IsLegal» производным свойством: public bool IsLegal {get {return Age> 18; }} ' –