【问题标题】:Adding UWP Code to a Xamarin Forms project, limiting duplication?将 UWP 代码添加到 Xamarin Forms 项目,限制重复?
【发布时间】:2021-11-25 07:15:34
【问题描述】:

我有一个 UWP 项目,它是我的管理应用程序。它使用 MVVM。

我还有一个 Xamarin Forms 项目,位于我的驱动程序的单独解决方案中。这也使用了 MVVM。 UWP 项目中的很多代码与 Xamarin 表单项目相同,即我的模型文件夹、我的助手文件夹和我的服务下的代码。

区别在于视图和视图模型。

有谁知道我如何能够在 Xamarin 表单项目中使用我的 UWP 项目中的代码?我真的不喜欢跨项目复制代码...

【问题讨论】:

  • 将任何公共代码放入两个应用程序都可以使用的共享库项目中
  • 感谢 Jason,类库似乎针对 .net 5,但 Xamarin 代码似乎仅针对 .net 标准 2.1
  • 您可以创建面向任何版本的 .NET Standard 库
  • 你真的可以用 .net 标准创建一个类库吗?在 VS 中,我唯一的选择是 .net core 1-3 和 .net 5。
  • 显然由于不兼容我得到以下问题:Project ClassLibrary1 is not compatible with netstandard2.0 (.NETStandard,Version=v2.0). Project ClassLibrary1 supports: net5.0 (.NETCoreApp,Version=v5.0) TestApp epos\TestApp\TestApp\TestApp\TestApp.csproj

标签: c# xamarin uwp


【解决方案1】:

有谁知道我如何能够在 Xamarin 表单项目中使用我的 UWP 项目中的代码?

不,没有这样的工具可以直接将 UWP 代码移植到 Xamarin Form,您还需要复制代码并手动编写特定逻辑。他们使用不同的 xaml 布局控件和可用的程序集。

如果您的 Forms UWP 客户端部分类似于管理应用程序,您可以将其添加到 Xamarin Forms 解决方案中,并在没有表单部分的情况下呈现它。 (禁用 LoadApplication 方法)

public MainPage()
{
    this.InitializeComponent();

  //  LoadApplication(new XamarinTest1.App());
}

将 UWP 项目添加到现有 Xamarin.Forms 应用。请参考这个tutorial

【讨论】:

  • 谢谢 Nico - 不过问题是,我将如何测试管理端和客户端?我需要在加载代码中评论吗?
  • 我检查了上面的cmets,看起来你找到了将代码移植到.net标准2.1类的解决方案,对吧?
猜你喜欢
  • 2017-05-02
  • 2017-10-16
  • 1970-01-01
  • 1970-01-01
  • 2018-06-30
  • 2019-07-19
  • 2016-12-02
  • 2017-01-14
  • 2021-11-29
相关资源
最近更新 更多