具有多个UI的新应用程序:WPF和移动网站(asp.net)

Sky*_*kyp 3 .net c# asp.net wpf

我正在设计一个支持两个完全不同的UI的应用程序的第一步,我想用最少的代码重复来完成它.

第一个UI将是一个Windows应用程序(可能是WPF),它将是最常用的,第二个将是主要通过移动设备访问的Web应用程序.

知道WPF应用程序必须完全与网络断开连接,并且偶尔必须能够在中央服务器中同步离线完成的工作

这是我在想的事情:

WPF版本:

MVC样式的WPF应用程序,SQL Server紧凑/表达在每个工作站和实体框架上进行数据访问,组织使WPF模型,实体模型和控制器处于单独的程序集中.另外,我们需要一个SQL Server数据库来同步每个人的工作.

网络版:

这就是我的想法变得模糊的地方:如果我做一个asp.net MVC应用程序,修改它以便它更友好,你认为可以重用模型,实体模型,控制器,验证等吗?

我还处于设计的早期阶段,我对asp.net MVC并不熟悉,所以如果你有其他解决方案,那将会有很大帮助.

此外,当我有一个好的设计时,我将创建并发布一个POC,以便它可以重复使用.

Myl*_*ell 5

我建议如下:

  • 使用TDD(http://en.wikipedia.org/wiki/Test-driven_development)构建服务层(http://martinfowler.com/eaaCatalog/serviceLayer.html)以封装应用程序的功能.
  • 在服务层上构建远程外观(http://martinfowler.com/eaaCatalog/remoteFacade.html)以服务远程客户端(WPF,Andriod,iPnone,WP7等)
  • 在启动WPF应用程序之前,请阅读MVVM和Prism4(http://compositewpf.codeplex.com/).
  • 构建ASP.NET以直接/在进程中访问服务层.

希望这有帮助,祝你好运!