加上了[KnowType()]属性后,序列化的类都有一个__type属性,怎么把它去掉啊

解决方案 »

  1.   

    肯定不能去掉了,去掉了它就不知道如何反序列化了。除非你可以保证你序列化的类型都是最终明确类型,不要出现类似Object的类型,否则那个属性不可少,告知对方反序列化时用何种类型还原用的。
      

  2.   

    DataContractJsonSerializer的构造函数里有一个参数alwaysEmitTypeInformation,设置为false就可以去掉顶层的__type了,但如果某个属性的类型也是复杂类型,还是有可能会被加上__type的。