如何在Xamarin.Forms项目中引用“.NETPlatform,Version = v5.0”框架?

问题描述 投票:2回答:1

我目前正在开发一个名为ABCD的Xamarin.Forms项目,使用macOS Sierra v10.12.6和Visual Studio(VS)for Mac v7.3.2(导致此问题的步骤详细介绍here)。

将我的NETStandard.Library包从版本1.6.0更新到2.0.1 *后,我注意到project.json文件仍然说:

"frameworks": {
"netstandard1.5": {}
}

* VS将此软件包更新到2.0.1,尽管终端显示dotnet --version为2.1.3。

我继续用netstandard1.5取代netstandard2.0并重建了这个项目。但后来立即遇到了这个错误:

错误:您的项目未引用“.NETPlatform,Version = v5.0”框架。在project.json的“frameworks”部分中添加对“.NETPlatform,Version = v5.0”的引用,然后重新运行NuGet restore。 (A B C D)

我试图通过以下方式解决这个问题:

1 - 更新project.json:

"frameworks": {
    "netstandard2.0": {},
    ".NETPlatform,Version=v5.0": {}
}

2(source) - 更新project.json:

"frameworks": {
    "netstandard2.0": {},
    ".NETPlatform,Version=v5.0": {
        "imports": ["netstandard2.0"]
}

3(source) - 更新project.json:

"frameworks": {
    "netstandard2.0": {},
    ".NETPlatform,Version=v5.0": {
        "imports": [".NETCore,Version=v5.0"]
}

4(source) - 更新project.json:

"frameworks": {
    "netstandard2.0": {
        "imports": [".NETCore,Version=v5.0"]
}

5(source) - 更新project.json:

"frameworks": {
    ".NETPlatform,Version=v5.0": {
        "imports": ["netstandard2.0"]
}

6(sourcesource) - 更新ABCD.csproj:

<PropertyGroup> 
    <NuGetTargetMoniker> .NETStandard,Version=v2.0 </NuGetTargetMoniker> 
</PropertyGroup>

我想我可能会找到一些有用的herehere,但没有成功。

在尝试上述修复后,仍然存在上述相同的错误。我该如何解决?

编辑:

7(source) - 更新project.json:

"frameworks": {
    "netstandard2.0": {},
    "netplatform50": {}
}

仍然看到相同的错误。

xamarin.forms visual-studio-mac
1个回答
0
投票

这个post建议不要使用project.json,而是在你的项目根文件夹中做一个dotnet migrate来转换它,以便它使用.csproj代替

© www.soinside.com 2019 - 2024. All rights reserved.