Я получаю строку JSON в действии контроллера MVC4/.NET4 WebApi. Параметр действия dynamic
, потому что я ничего не знаю на принимающей стороне о объекте JSON, который я получаю.
public dynamic Post(dynamic myobject)
JSON автоматически анализируется, и полученный объект dynamic
является Newtonsoft.Json.Linq.JContainer
. Я могу, как и ожидалось, оценивать свойства во время выполнения, поэтому, если JSON содержит что-то вроде myobject.myproperty, тогда я могу теперь взять полученный динамический объект и вызвать myobject.myproperty
внутри кода С#. Пока все хорошо.
Теперь я хочу перебрать все свойства, которые были предоставлены как часть JSON, включая вложенные свойства. Однако, если я делаю myobject.GetType().GetProperties()
, он возвращает свойства Newtonsoft.Json.Linq.JContainer
вместо свойств, которые я ищу (которые были частью JSON).
Любая идея, как это сделать?