我有各种各样的MVC视图模型可供使用,每一个都包含很多关于它们生成的页面的信息。我需要从视图模型中获取大部分信息,并使用我编写的框架使其在客户端可用。
不幸的是,当我尝试将整个视图模型序列化为JSON时,Newtonsoft空手而归。因此,作为一种解决方法,我一直在手动构建一个隐式类型的对象,以便将信息序列化为JSON。
然而,这是乏味的,因此,我想要一种简单的方法来迭代视图模型的所有成员(或任何其他对象)并仅传输常规系统类型(字符串,布尔值,整数和数组等等。到字符串,对象的字典。
这比我想象的要困难,因为我似乎无法检查其成员的type属性以查看对象成员是否是这些泛型类型中的任何一个。有没有一种简单的方法可以做到这一点?
(顺便说一句,我想避免使用序列化属性标记所有模型。它们太多了。)