.NET Standard是.NET API的一个正式规范,允许您在目标平台上共享更多的代码。 Xamarin开发人员能够使用.NET标准库来共享业务逻辑,而.NET Standard支持来自Xamarin.Forms最近,允许您轻松地在多个平台上共享您的业务和UI逻辑。 您一直在问我们什么时候可以使用Xamarin.Forms和.NET Standard创建文件 - >新建 - >移动应用程序,我们很高兴地分享一下,现在可以在Visual Studio 2017版本15.5预览版3中找到它。
在这篇博客文章中,您将学习如何在Visual Studio 2017中使用新的项目模板,使您能够在创建新的Xamarin.Forms应用程序时利用.NET标准作为代码共享策略。 我们还将看一下Visual Studio 2017 15.5版中的Xamarin.Forms模板中的其他一些改进,例如迁移到PackageReference和复选框以选择要定向的平台。
文件 - >新建项目
您可以通过转到文件 - >新建 - > Visual C# - >跨平台 - >跨平台应用程序开始一个新的Xamarin.Forms应用程序。 这个模板可以让你选择你想要什么类型的初学者项目,你计划瞄准什么平台,以及你的代码共享策略。
.NET标准
.NET标准是.NET API的一个正式规范,旨在在所有.NET运行时(如.NET Framework,Mono和.NET Core)上提供。 实际上,您可以将其视为一个简化但扩展的可移植类库。 任何添加到.NET标准库的代码都可以在任何支持.NET标准平台的运行时使用。 另外,我们还扩展了对.NET基类库中API的访问(.NET Standard 2.0增加了超过20,000个新的API!),支持更多的平台,我们永远不必处理疯狂的PCL配置文件。
要在Xamarin.Forms中使用.NET标准代码共享策略,请选择.NET标准单选按钮。 可移植类库不再可用作File - > New的一个选项,但现有的类库项目将继续构建和工作!
PackageReference
NET开发人员知道的是packages.config的痛苦。 这个文件是应用程序引用的所有NuGet包的规范列表,但很快变成难以管理的混乱。 packages.config的问题在于,它不仅仅是显式添加的所有包列表,还包括我的包引用的包。
PackageReference是在.csproj文件中直接管理NuGets的新方法,而不是一个单独的文件。 PackageReference我最喜欢的一件事就是列出的所有软件包都是可以恢复的,这意味着你只需要定义你的应用程序使用的顶级NuGets; 不再需要处理你的软件包引用的软件包。
要管理软件包,可以使用NuGet软件包管理器或直接编辑.csproj来添加如下内容:
点击(此处)折叠或打开
- ItemGroup>
- PackageReference Include="Xamarin.Forms" Version="2.4.0.282" />
- /ItemGroup>
我们的跨平台应用程序向导中的所有模板现在默认使用PackageReference。
选择你的平台
移动开发人员经常开始考虑某些平台的项目。 我们希望我们的文件 - >新建项目能够体现这种体验,因此我们添加了复选框,以便您可以在创建移动应用程序时选择您关心的平台。
结束语
这篇博文讨论了如何使用Xamarin.Forms和.NET Standard来创建文件 - >新建 - >移动应用程序。 我们还介绍了跨平台模板向导的一些重要改进,包括迁移到PackageReference和目标平台复选框,以选择您关心的平台。
您可以通过下载Visual Studio 2017版本15.5来获取这些更改,目前处于预览状态。 借助Visual Studio 2017,现在您可以更轻松,更安全地尝试新的Xamarin预览。 Visual Studio 2017预览版将与Visual Studio 2017并排安装,并进行沙盒处理以防止预览环境中的任何内容影响您的稳定环境,因此请务必今天试用我们的新模板! 这些模板目前只是Visual Studio,但很快就会变成Visual Studio for Mac。