代码之家  ›  专栏  ›  技术社区  ›  Rodney

WP7逻辑删除的继承基类中MVVMLight ViewModelBase公共无参数构造函数的问题

  •  3
  • Rodney  · 技术社区  · 14 年前

    我是 handling tombstoning in Wp7 by dumping my ViewModel link for more info ).

    这将导致序列化失败:

    "The type 'GalaSoft.MvvmLight.ViewModelBase' cannot be deserialized in partial trust because it does not have a public parameterless constructor."
    

    请原谅我的无知,但连载对我来说是新的-我想我明白为什么它失败了,但我正在想办法绕过它。例如,我可以像处理类([IgnoreDataMember])中的某些字段一样,将整个基类标记为不可序列化或忽略吗?我不需要在这个类中存储任何东西。

    1 回复  |  直到 7 年前
        1
  •  4
  •   LBugnion    14 年前

    StyleCop不喜欢抽象类中的公共默认构造函数,这就是为什么我将ViewModelBase设置为受保护的。但是,正如您发现的,这会导致序列化问题。这个问题在WP7中更为严重,在WP7中,为了安全起见,很容易将整个vm转储到序列化中。

    干杯,