У меня есть объект, и прежде чем сериализовать его в Json, я бы хотел добавить к нему свойство.Поэтому мой объект будет выглядеть так:
public class MySpecialObject {
public int Id { get; set; }
public string OneProperty { get; set; }
public string ASecondProperty { get; set; }
}
Однако гораздо позже в программе я часто хочу добавить свойство или два.Обычно это происходит в моем контроллере, прямо перед его преобразованием в Json.Я хотел бы сделать что-то вроде этого:
///Retrieve object from database
var MySpecialObject = specialObjectRepository.Get(id);
MySpecialObject.["DynamicProperty"] = "Dynamic Property!";
///Pretend I do Json serialization here
return MySpecialObject;
Это очевидно выдумано, но я надеюсь, что я пытаюсь сделать, ясно.В Javascript это действительно легко сделать, так как оно свободно набрано.Я думал, что с ключевым словом dynamic в C # 4.0 это было бы возможно, но похоже, что это не то, для чего оно (хотя я мог бы полностью упустить очевидное).Я думаю, я мог бы создать класс для подобных ситуаций, но было бы проще сделать это в одну строку.Я знаю, это звучит лениво, но кажется, что то, что я пытаюсь сделать, должно быть возможным.