我一直在研究MVVM模式,想在一个相对较小的WPF项目中尝试它。该应用程序将是单用户的。输入和输出数据都将存储在一个“关系型”XML文件中。使用带有键和键引用的模式(XSD文件)来验证文件。
我还开始涉足Linq和LinqToXml,并编写了几个相当复杂的查询(小胜利:))。
现在,我正在尝试将所有这些内容整合起来,但我发现我有点困惑,不知道应该将什么放在Model中,将什么放在ViewModel中。以下是我迄今为止一直在努力解决的选项:
1. 我是否应该将Model视为XML文件本身,并将所有的LinqToXml查询放在ViewModel中?换句话说,甚至不编写名为Model的类?
2. 我是否应该编写一个只是简单包装XML文件和XSD Schema Set并执行验证、保存更改等的Model?
3. 我是否应该将“基本”查询放在Model中,而将“视图特定”的查询放在ViewModel中?如果是这样,那么在这两个类别之间应该画哪条线?
我意识到这个问题可能没有一个“正确”的答案……我只是在寻求建议和利弊分析,如果有人知道类似场景的代码示例,那就太好了。
谢谢,
-Dan
我还开始涉足Linq和LinqToXml,并编写了几个相当复杂的查询(小胜利:))。
现在,我正在尝试将所有这些内容整合起来,但我发现我有点困惑,不知道应该将什么放在Model中,将什么放在ViewModel中。以下是我迄今为止一直在努力解决的选项:
1. 我是否应该将Model视为XML文件本身,并将所有的LinqToXml查询放在ViewModel中?换句话说,甚至不编写名为Model的类?
2. 我是否应该编写一个只是简单包装XML文件和XSD Schema Set并执行验证、保存更改等的Model?
3. 我是否应该将“基本”查询放在Model中,而将“视图特定”的查询放在ViewModel中?如果是这样,那么在这两个类别之间应该画哪条线?
我意识到这个问题可能没有一个“正确”的答案……我只是在寻求建议和利弊分析,如果有人知道类似场景的代码示例,那就太好了。
谢谢,
-Dan