use*_*392 4 c# xamarin xamarin.forms
我有一个Xamarin Forms申请。我想在特定于平台的项目(即 Xamarin.iOS 和 Xamarin.Android)中使用最新的 C# 版本。看起来我可以添加<LangVersion>latest</LangVersion>到 .csproj 文件中。但是,我不确定在哪里添加它。PropertyGroup我在项目文件中看到很多标签(通常每个模拟器和发布类型都有一个标签)。我需要将其添加到每个吗PropertyGroup?我需要在调试和生产时使用最新的语言版本。
小智 6
James Montamagno 在他的博客上发布了教程:https ://montemagno.com/use-csharp-8-everywehre/
您只需更改<LangVersion />.csproj 的值:
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>netstandard2.0</TargetFramework>
<ProduceReferenceAssembly>true</ProduceReferenceAssembly>
<LangVersion>8.0</LangVersion>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Xamarin.Forms" Version="4.3.0.947036" />
<PackageReference Include="Xamarin.Essentials" Version="1.3.1" />
</ItemGroup>
</Project>
Run Code Online (Sandbox Code Playgroud)
如果您想更改平台特定代码的语言,只需添加:
<PropertyGroup>
<LangVersion>8.0</LangVersion>
</PropertyGroup>
Run Code Online (Sandbox Code Playgroud)
到你的ProjectName.iOS.csproj或ProjectName.Android.csproj.
一般来说,如果您使用最新版本的Target框架,则版本C#也会是最新的。那么你就不需要手动设置版本了C#。
右键单击Xamarin Forms 的解决方案,然后单击Properties ,然后可以如下设置Target Framework 。
你可以参考这个官方文档来了解它的解释。
也可以C#手动设置版本,.csproj如下所示:
<PropertyGroup>
<LangVersion>latest</LangVersion>
</PropertyGroup>
Run Code Online (Sandbox Code Playgroud)
这是 C# 语言版本参考。