是否有可能生成一个完整的、工作正常的WPF/Silverlight/XAML应用程序,以提供最佳实践?

是否有可能生成一个完整的、工作正常的WPF/Silverlight/XAML应用程序,以提供最佳实践?,wpf,silverlight,xaml,mvvm,Wpf,Silverlight,Xaml,Mvvm,在给定应用程序的数据库或其他源规范的情况下,是否有一种方法可以生成整个WPF或Silverlight/XAML应用程序,从而产生最佳实践 例如,假设我有一个规范化良好的数据库(或某个应用程序的其他基本规范),是否有一个工具可以创建格式良好的MVVM应用程序。这将包括 所有表(列表和编辑)的XAML(视图),无代码隐藏 ViewModels,它发出从db模式提取的属性以及所有标准CRUD操作的命令或行为 使用repository模式(或其他一些db抽象)构建的模型,具有发出表设计和关系的接口,以

在给定应用程序的数据库或其他源规范的情况下,是否有一种方法可以生成整个WPF或Silverlight/XAML应用程序,从而产生最佳实践

例如,假设我有一个规范化良好的数据库(或某个应用程序的其他基本规范),是否有一个工具可以创建格式良好的MVVM应用程序。这将包括

  • 所有表(列表和编辑)的XAML(视图),无代码隐藏
  • ViewModels,它发出从db模式提取的属性以及所有标准CRUD操作的命令或行为
  • 使用repository模式(或其他一些db抽象)构建的模型,具有发出表设计和关系的接口,以及您选择的默认实现(sql、sql ce…等等)
这样一个理想的工具只需对应用程序进行“第一步”,然后开发人员就可以进行所有必要的更改和修改

我不认为有任何这样的工具,但它似乎像这样的工具应该是可能的

另一个相关的问题是,在没有这样一个工具的情况下(或者即使有),什么工具最适合让我从数据库设计(或者某个应用程序的某种其他基本规范)到工作应用程序

要在几个小时内从设计到基本工作应用程序,您需要采取什么步骤

我只是试图找出所有这些实践和模式,我对这些部分有了相当好的理解,但不确定要使用什么工作流使它们快速协同工作,但仍然允许对单独的关注点进行单元测试

提前谢谢


赛斯不确定这是否是你要找的,但你可以用


从流程的角度来看,我首先构建并测试我的ViewModels。这就允许在设计和连接UI以及将数据拉入ViewModel之间进行分工。

Chris,这个问题的核心是想知道,当有人拥有数据库时,为什么他们必须编写数据访问代码。当然,有了EF,你真的不必写DAL。但是,按照你教给我的,我很难弄清楚如何使用EF,并且仍然允许ViewModel可以使用模拟dal(如respository)进行测试。(显然,这是ALT.NET人满为患的网站对EF的常见批评。)对我来说,理解一种模式是不够的(我在这方面也有所进展)。我想了解“工作流程”。这是一个循序渐进的过程,可以帮助我以一种可测试的方式实现所有的部分。在我们的讨论中,我们没有太多地讨论过集成模拟数据,也许我们下次可以重点讨论这个问题。最后,我感到惊讶的是,给定一个数据库模式,没有一个工具能够以可测试的方式构建整个应用程序。我知道它不是很TDD,我的假设是开发人员会在事实发生后包装生成的代码,然后使用TDD方法。我知道在某些时候,我们必须编写代码,但我们越能关注业务逻辑,越少关注管道,就越好。谢谢你所做的一切。赛斯听起来不错。存储库模式的一部分是专门允许模拟数据。IRepository通常是所选ORM上的一个抽象层,因此选择EF或NHibernate或其他ORM不应影响ViewModel收集数据的方式。我同意有一些WPF->DB支架会很好。Chris,你说过“选择EF或NHibernate或其他ORM不应该影响ViewModel收集数据的方式”。但这正是我一直想弄明白的。如果我使用EF或NH或任何其他ORM,它是否必须实现IRepository接口,以便在MOSK中进行单元测试?然而,我还没有找到一个简单的方法来做到这一点。具体来说,您如何设置DAL以使用EF,但如果EF未实现IRepository模式,则如何在IRepository模拟中交换以进行测试?我不太明白?我可能太难了。