Próbuję utworzyć Json w mojej aplikacji MVC i chcę tylko uwzględnić właściwości z mojego obiektu źródłowego, jeśli ma on pewne wartości właściwości, ustawić.Czy jest możliwe tworzenie właściwości w locie, z dynamicznym obiektem .NET?
np.
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 i CCCCC mają wartości tylko:
return Json(new { Aaaa = source.Aaaa, Cccc = source.Ccccc.Value };
DDDD tylko został ustawiony.
return Json(new { Dddd = source.Dddd }
Zobacz, jak starałem się utworzyć anonimowy obiekt na bieżąco. Mogę to zrobić, ponieważ w tym skruszonym przykładzie wiem, co zostało ustawione. Ale jeśli chodzi o prawdziwy kod, musiałbym "rozgryźć" to, co było naprawdę ustawione, a następnie dynamicznie to zwrócić.
Pomysł opiera się na Stack Exchange's Api Wrapper .. gdzie mają pewne opcjonalne wartości, które zwracają przez json, jeśli są ustawione.
pokrewne: http://stackoverflow.com/questions/2974008/adding-unknown-at-design-time-properties-to-an-expandoobject – Steven