Win8.1向后兼容的UWP app项目结构

时间:2015-10-06 12:51:18

标签: c# .net wpf mvvm uwp

我正在编写一个新的UWP应用程序,我想尽可能多地重用业务逻辑代码(在ViewModel层中),因为我可以创建一个可在Windows 7/8 / 8.1上运行的单独的WPF应用程序< / p>

我正在使用MVVM Light工具包来帮助解决这个问题

我目前的解决方案结构有4个项目:一个模型,一个ViewModel,一个UWP应用程序和一个WPF应用程序,但我正在努力设置ViewModel,使其能够同时针对7/8 / 8.1和10.

关注Oren Novotny's blog我的想法是设置ViewModel以定位net45和netcore45框架(以及UAP框架),这些框架将涵盖Windows 8 / 8.1商店应用程序和.NET 4.5桌面应用程序,但是我不确定这会使代码本身变得多么复杂,因为这是我第一次经历这个。

  1. 有没有人见过这类问题的好文章?我发现的所有文章都谈到将应用程序从8.1升级到10,但是在支持两个平台时不编写应用程序以最大限度地减少编码工作

  2. 我想我需要两个不同的视图:一个空白通用Windows应用程序和一个经典WPF应用程序,但我还需要有两个独立的ViewModel项目:经典桌面dll(用于&lt; = Win 8.1 )和通用Windows类库?或者我可以使用Oren Novotny的帖子建议的框架定位来构建一个dll吗?

  3. 任何帮助或指示将不胜感激。

    由于

1 个答案:

答案 0 :(得分:2)

  
    

我正在编写一个新的UWP应用程序,我想尽可能多地重用业务逻辑代码(在ViewModel层中),因为我可以创建一个可在Windows 7/8 / 8.1上运行的单独的WPF应用程序< / p>   

在这种情况下,您只需创建一个可移植的类库,该库以Visual Studio 2015中的.NET 4.6和UWP为目标。

  

关注Oren Novotny的博客我的想法是设置ViewModel以定位net45和netcore45框架(以及UAP框架),这将覆盖Windows 8 / 8.1商店应用程序和.NET 4.5桌面应用程序

目前,我们无法创建涵盖UWP和Windows 8 / 8.1 Store App的便携式库。作为替代方式,我建议您使用可以由Windows应用商店应用8 / 8.1,WPF net45 / net46和UWP项目引用的共享项目。 enter image description here