我完全不熟悉WPF,因此我花时间在网上搜索有关如何完成任务的示例和教程。我总结出前进的道路是尝试使用MVVM模式作为我的应用程序结构的指导。如果不是我的技术能力,我对这个理论完全满意。我有一个或两个问题,希望可以或许点我就有关应用程序设计的几个问题的正确方向。WPF,应用程序设计建议和数据库并发性
我希望保留一份客户名单。我见过几个这样的例子。这些涉及加载包含Customer对象列表的Customers存储库。为客户创建相应的View和ViewModel。当用户选择一个客户编辑,视图,并在客户收集客户对象被创建视图模型。这会在进行更改时使所有内容保持同步。我的问题是:我的客户模型是非常复杂的,它包含了基本的客户信息,姓名,地址等,但属性也对客户,类别列表,产品简介,目标预算等等。我想这些是可用于在客户编辑查看,但不希望将它们加载到客户存储库中。我只想在需要时加载扩展的客户信息,但要更新客户视图的更改。达到此目的的最佳方式是什么?
我的第二个问题是:如果我将客户信息分成几个标签,我应该为每个标签有单独的View和ViewModel,还是只有一个View。最佳做法是什么?
我想我会使用Linq to SQL来处理数据库处理。在多用户环境中客户可能同时被多个用户添加。我如何反映客户存储库中其他用户所做的新增功能?我需要重新加载吗?
有关处理数据库并发问题的任何建议。如果另一个用户编辑或删除一个客户我目前编辑,当我尝试和保存应该发生什么?我所熟悉的数据集和ADO.net和处理使用DataAdapter时产生的任何错误的并发,是不是也有类似的方法与LINQ to SQL的?
我明白这里有很多含糊的问题。但我会感谢所提供的任何指导。
问候 添
Eduardo,非常感谢您的意见。我完全同意你的意见。样品非常有用,我非常感谢任何花时间提交它们的人。我只希望我能找到解释如何在现实世界和复杂应用程序中做事的人。我做了想要的代码,只是我指向正确的方向。 – Tim 2009-11-06 14:39:59