3

当使用代码片段在定位器类中创建新的 ViewModel 时,它会创建一个清理方法,但 Main 中已经有一个可用的方法,因此出现错误....

我们应该将它们全部合并吗?

或者我们是否应该将方法重命名为 Cleanup[Name of viewmodel] 例如。

我在这里有点困惑

我想问的另一个问题是关于命名约定。

我试图遵循与“MAIN”一起使用的命名约定......

因此我有 CreateLogin、ClearLogin、Login(用于绑定的非静态属性)等。

使用 CreateLoginViewModel、ClearLoginViewModel 等不是更好吗?

只是好奇

谢谢

4

1 回答 1

4

这个片段(以及一般的 ViewModelLocator)需要工作,这将是 V4 中的一个重大变化。

是的,其目的是将代码段生成的 Cleanup 方法与已经可用的方法合并。这个想法是,您可以只调用 ViewModelLocator.Cleanup() 并让所有 VM 自行清理(例如将它们的状态保存到本地存储、关闭流等)。由于代码片段不能修改现有方法,我决定只复制 Cleanup 方法。它不会编译,因此开发人员应该知道合并它们。

也就是说,对于每种 VM 类型都有一个 CreateMain、ClearMain 等并不令人满意。我想我们都同意这是一个弱实现,我想通过在未来(V4)提供一个通用的 ViewModelLocator 来改进它。

关于命名约定,它们只是约定。我厌倦了输入“ViewModel”,但请随意使用您自己的约定。正如我所说,V4 中可能不再需要该片段。同时为给您带来的不便深表歉意;)(请注意,如果您愿意,可以轻松修改代码段)

干杯,劳伦特

于 2010-06-04T09:22:35.363 回答