Учитывая System.Object
, как получить динамический объект, с помощью которого можно получить доступ к любым его элементам.
В частности, я хочу провести модульное тестирование действия контроллера ASP.NET MVC 3, которое возвращаетJsonResult
.JsonResult
имеет свойство Data
типа object
.Я заполняю этот объект анонимным типом:
return Json(new { Success = "Success" });
В моем тесте я хочу сделать что-то вроде
var result = controller.Foo();
Assert.That(((SomeDynamicType)result.Data).Success, Is.EqualTo("Success"));
Как это сделать?
ОБНОВЛЕНИЕ
Хотя result.Data
относится к типу object
, проверка его в окне «Часы» показывает, что он имеет следующий тип:
{
Name = "<>f__AnonymousType6`1"
FullName = "<>f__AnonymousType6`1[[System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]]"
}
System.Type {System.RuntimeType}