2012-02-03 5 views
0

Можно ли добавить новое свойство в литерал объекта после его инициализации. Я хочу сделать что-то вроде следующего:Как добавить новое свойство в литерал объекта

// Initialize new object literal to hold subset of information about each transaction. 
var transactionJson = new {}; 

transactionJson[transaction.Id] = new { 
    Status = transactionList.StatusProperty, 
    Completed = transactionList.Completed, 
    First = transactionList.First 
}; 
+2

Это не объект буквальный; это анонимный тип. – SLaks

ответ

3

Это по своей сути невозможно.
Анонимные типы неизменяемые, и являются безопасными.

Вы должны использовать словарь или код DynamicObject.

+2

В этом проблема с эмуляцией функциональности динамических языков без динамического языка ... просто путает людей, которые ожидают, что он будет работать, как и все остальное! : D –

+0

Будет ли DynamicObject работать с сериализатором JSON? – b01

+0

@ b01: Какой сериализатор JSON? – SLaks

Смежные вопросы