[在VS中创建一个空白Xamarin.Forms项目时出现错误,在该项目中未引用netstandard程序集,并且我一生无法解决该问题。
我在应用程序中遇到的错误是:
我尝试过,无济于事:
<Reference Include="netstandard"/>
:https://github.com/dotnet/standard/issues/542#issuecomment-344591026<Reference Include="System.IdentityModel"/>
添加到csproj:https://github.com/dotnet/standard/issues/542#issuecomment-501309019<TargetFramework>netstandard2.0</TargetFramework>
更改为<TargetFrameworks>netstandard2.0</TargetFrameworks>
,如下所示:https://github.com/dotnet/standard/issues/542#issuecomment-465375220这是我的csproj(默认值,但注释中建议使用AutoGenerateBindingRedirects除外):
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>netstandard2.0</TargetFramework>
<ProduceReferenceAssembly>true</ProduceReferenceAssembly>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|AnyCPU'">
<DebugType>portable</DebugType>
<DebugSymbols>true</DebugSymbols>
<AutoGenerateBindingRedirects>true</AutoGenerateBindingRedirects>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Xamarin.Forms" Version="4.3.0.908675" />
<PackageReference Include="Xamarin.Essentials" Version="1.3.1" />
</ItemGroup>
<ItemGroup>
<Folder Include="ViewModels\" />
</ItemGroup>
</Project>
任何人都不知道该怎么办?我发现的大多数答案都行不通,或者已经使用了好几年,并且据称已被更新的VS版本修复。
这里是我详细的输出日志的链接:
VS Community 19预览:https://privatebin.net/?c7c4cd6123e0edd7#5qYTwaKSyGKBMgU3beshk3Xgx52nyCyAYcsq63uRfWWT
VS社区19:https://privatebin.net/?2cf9d7ab07e8a4fb#5UkwWhxKFPDGnTtVdZuawkQLMRNe4qvJLeuaBrFrPoJf
在经历了两周的个人痛苦并与经验丰富的Xamarin花费了2个小时后才发现问题!问题是我安装了两种不同版本的dotnet(一个在C:驱动器中,一个在我的E:驱动器中,我也保存程序文件)。在cmd中输入dotnet --version
只能看到它找到的版本是Ancient(1.x),然后单击dotnet --list-sdks
来找到重复的版本。在删除E:驱动器中的旧SDK并重新检查我的dotnet版本后,错误消失了!