2010-06-02 66 views
3
使用它创建了一个清理方法,但已经有一个可从主SO因此错误的片段创建定位器类中的一个新的视图模型时

....mvvm-light:我们应该合并定位器中的清理方法吗?

我们应该把它们合并所有?

或者我们应该重命名Cleanup [Viewmodel的名称]的方法为例。

我有点困惑在这里

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

我试着遵循“MAIN”使用的命名约定...

因此,我有CreateLogin,ClearLogin,登录(绑定非静态属性)等等等等。

这岂不是最好使用CreateLoginViewModel,ClearLoginViewModel等?

只是好奇

感谢

回答

4

这个片段(和ViewModelLocator一般)需要的工作,它是要在V4的重大变化。

是的,目的是合并片段生成的清理方法和已有的清理方法。这个想法是,你可以调用ViewModelLocator.Cleanup()并让所有的虚拟机清理自己(例如,保持它们的状态到本地存储,关闭流等)。由于片段无法修改现有的方法,因此我决定只复制Cleanup方法。它不会编译,所以开发人员应该知道合并它们。

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

关于命名约定,它们只是约定。我很累,输入“ViewModel”,但随意使用自己的惯例。正如我所说,V4中可能不再需要片段。在此期间给您带来不便道歉;)(注意,您可以轻松地修改代码片段,如果你愿意的话)

干杯, 洛朗

+0

所以,我提出我的所有ClearVM语句到ViewModelLocator单一的清理方法,但那么我注意到,当我退出我的WP7应用程序时,它向我没有使用的虚拟机投掷了一个错误。为了解决这个问题,我在IsNull检查中封装了清理检查,但我担心我做错了什么(我有一个奇怪的错误,我的消息被多次触发,我认为它与Cleanup有关 - http:// stackoverflow .com/questions/4049387/mvvmlight-message-register-firing-multiple-times-in-wp7-cleanup-problem -thanks in advance for any insights见解! – Rodney 2010-10-29 10:49:20

相关问题