【问题标题】:References don't show up in Visual Studio 2017 after creating a .NET Standard branch创建 .NET Standard 分支后,引用不会显示在 Visual Studio 2017 中
【发布时间】:2017-12-28 17:04:15
【问题描述】:

我正在使用 Visual Studio 2017 开发开源项目 https://github.com/SpiegelSoft/XamarinForms.Reactive.FSharp

我最近创建了一个名为 dotnet-standard 的分支,顾名思义,它是向 .NET Standard 的迁移。但是,在创建此分支并重新签入主分支(它是一个 PCL 而不是 .NET 标准库)后,项目将不再构建。

首先,引用是不可见的。我在 Visual Studio 中只能看到一个 .NET 节点(见屏幕截图)。

构建在第一个实例中失败

Xamarin.Forms 目标已多次导入。请检查您的项目文件并删除重复的导入。

这很奇怪,因为在我创建新分支之前,同一个 fsproj 文件正在运行。

当我删除 fsproj 文件中的 Xamarin.Forms 导入行,然后执行 git reset --hard 时,错误消息变为

您的项目未引用“.NETPortable,Version=v4.5,Profile=Profile259”框架。在 project.json 的“frameworks”部分添加对“.NETPortable,Version=v4.5,Profile=Profile259”的引用,然后重新运行 NuGet restore。

但 IDE 甚至不允许我创建 project.json 文件。我的 Visual Studio 设置显然出了点问题。

在我重新安装 Visual Studio 之前,是否有人有任何明显的提示?

【问题讨论】:

  • 除了重置之外,我还会尝试git clean -xfd。假设您的 .gitignore 文件配置正确,这应该会删除 MSBuild 和 VS 可能创建的任何临时文件,这些文件可能会被丢弃。
  • 这行得通,经过一番摆弄。如果您想将其作为答案提交,我会将其标记为解决方案。

标签: f# visual-studio-2017


【解决方案1】:

正如 cmets 中提到的,VS / MS Build 可能会在以前生成的文件上出错 - 通常在各种 obj 文件夹中。

要恢复到“干净”状态(与首次克隆存储库时相同),请运行 git reset —hard 恢复所有未提交的更改,运行 git clean -xfd 删除所有未跟踪的文件和文件夹。

假设您的.gitignore 文件配置正确,最后一步应该删除所有临时文件。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-08-09
    • 1970-01-01
    • 2020-01-31
    • 1970-01-01
    • 1970-01-01
    • 2017-05-02
    相关资源
    最近更新 更多