【问题标题】:Project does not reference framework except that it does项目不参考框架,但它确实
【发布时间】:2019-10-04 16:11:46
【问题描述】:

我有一个包含多个项目的解决方案。 所有项目都针对 .NETFramework 的 v4.6.1。 但是,当我构建解决方案并尝试运行它时,出现以下异常:

您的项目未引用“.NETFramework,Version=v4.6.1” 框架。在中添加对“.NETFramework,Version=v4.6.1”的引用 项目文件的“TargetFrameworks”属性,然后重新运行 NuGet 恢复。

谁能指出我正确的方向? 我不知道出了什么问题。

配置1:

<RootNamespace>Exact_Online_Database</RootNamespace>
<AssemblyName>Exact_Online_Database</AssemblyName>
<TargetFrameworkVersion>v4.6.1</TargetFrameworkVersion>

配置2:

<RootNamespace>ExactOnlineConsoleApp</RootNamespace>
<AssemblyName>ExactOnlineConsoleApp</AssemblyName>
<TargetFrameworkVersion>v4.6.1</TargetFrameworkVersion>

配置3:

<RootNamespace>Exact_Online_Services</RootNamespace>
<AssemblyName>Exact Online Services</AssemblyName>
<TargetFrameworkVersion>v4.6.1</TargetFrameworkVersion>

配置4:

<RootNamespace>Example</RootNamespace>
<AssemblyName>Example</AssemblyName>
<TargetFrameworkVersion>v4.6.1</TargetFrameworkVersion>

【问题讨论】:

  • 您是从旧版本升级的吗?似乎某些文件指向旧的框架版本,因此会产生错误。
  • @Aaron 我没有升级,我检查了我的文件,据我所知,它们都是正确的
  • 嗯,我觉得很奇怪。您能否尝试将框架版本切换到 4.7.2 或任何其他版本,然后尝试构建项目?对我来说,当我在属性中切换版本时它才有效。
  • 你会粘贴你的 *.csproj 文件吗?

标签: c# .net frameworks


【解决方案1】:

按照 Henry He 对this question 的回答中的建议,删除 obj 文件夹为我解决了这个问题。

有关信息,当我尝试在不同的分支上构建一个已更改为 .NET Core(来自 Framework)的项目时,我遇到了这个问题。当我切换回带有原始框架项目的分支时,它将不再构建。

【讨论】:

    【解决方案2】:

    您最近是否从旧版本的 Visual Studio 更改为 VS 2017 来构建您的解决方案?看来构建过程正在寻找&lt;TargetFrameworks&gt; 元素,而不是&lt;TargetFrameworkVersion&gt;

    请参阅documentation here 了解更多信息。

    【讨论】:

    • @jtate:不,我们没有
    猜你喜欢
    • 1970-01-01
    • 2015-04-14
    • 2016-10-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多