我有一系列具有DataContract
属性的 EF POCO,以及除导航属性之外的DataMember
所有属性的属性。
这样,当我为 WCF 序列化对象时,只有所需的属性被序列化,而忽略了导航属性。
如果我尝试将这些对象之一存储在 ViewState 中,则会收到该对象不可序列化的错误。但是,如果我将Serializable
属性添加到对象,序列化程序也会尝试序列化所有导航属性,这反过来要求它们也被标记为可序列化。
有没有办法强制ViewState
( StateBag
) 使用DataContract
属性?是否可以自定义或替换ViewState
序列化?
如果不可能,我是否必须使用Selializable
类的属性以及NotSerialized
所有导航属性的属性,还是有更好的解决方案?