Estoy tratando de crear un Json en mi aplicación MVC y solo quiero incluir las propiedades de mi objeto fuente, si tiene algunos valores de propiedades, establecer.¿Es posible crear propiedades sobre la marcha, con un objeto dinámico .NET?
por ejemplo.
public class Foo
{
public string Aaaa { get; set; }
public string Bbbb { get; set; }
public int? Ccccc { get; set; }
public Lol Dddd { get; set; }
}
// Example Outputs.
Aaaa y CCCCC sólo tienen valores:
return Json(new { Aaaa = source.Aaaa, Cccc = source.Ccccc.Value };
Dddd sólo se ha establecido.
return Json(new { Dddd = source.Dddd }
ver cómo estaba tratando de crear un objeto anónimo sobre la marcha. Bueno, puedo hacer eso porque en este ejemplo contrito, sé lo que se estableció. Pero cuando se trata de código real, tendría que 'descifrar' qué estaba realmente establecido y luego devolverlo de manera dinámica.
La idea se basa en Stack Exchange's Api Wrapper .. donde tienen algunos valores opcionales que devuelven a través de json, si están configurados.
relacionadas: http://stackoverflow.com/questions/2974008/adding-unknown-at-design-time-properties-to-an-expandoobject – Steven