Situation
我想在我的WPF MVVM应用程序中用多种语言实现错误处理。我在互联网上做了一些研究,发现了这篇文章:
问题1
你不能把错误处理移到一个地方吗?在de或模型中,但是我不明白为什么两个类都有一些错误处理.
问题2
在他的示例中,错误消息是在模型类中设置的,这是一个很好的实践吗?在我看来是“不好的编码”..。还是我搞错了?
发布于 2014-04-03 16:08:56
问题1:要记住的是MVVM模式的每个部分的角色。在模型中需要进行一定数量的错误处理,但它只应该与业务逻辑相关。这些错误需要传达给模型的“客户端”或视图模型。类似地,某些错误处理可能发生在视图模型中,但应该仅限于视图模型的角色(即。它需要独立于视图之外)。
问题2:我不喜欢在模型中设置错误消息,也不喜欢视图模型中的错误消息。错误信息需要传递到可以正确格式化和翻译的视图。这允许为不同语言创建视图,而不必更改视图模型(或模型)中的任何代码。
我不愿说“永远不会”,但我认为一个模特需要了解自己的语言环境是非常罕见的。
我们使用以下方法来支持多语言:
http://www.codeproject.com/Articles/35159/WPF-Localization-Using-RESX-Files
这允许我们传递可以在视图中转换的错误键。
希望这能有所帮助!
https://stackoverflow.com/questions/15297111
复制相似问题