C# 错误:*.csproj无法导入"$(MSBuildBinPath)\Microsoft.CSharp.targets“;论单发

C# 错误:*.csproj无法导入"$(MSBuildBinPath)\Microsoft.CSharp.targets“;论单发,c#,monodevelop,C#,Monodevelop,因此,我在LinuxMint16上开发了MonoV5.7。 我用默认代码创建了新的C#控制台项目 using System; namespace Lab1 { class MainClass { public static void Main (string[] args) { Console.WriteLine ("Hello World!"); } } } 使用制度; 名称空间Lab1 { 类主

因此,我在LinuxMint16上开发了MonoV5.7。 我用默认代码创建了新的C#控制台项目

using System; namespace Lab1 { class MainClass { public static void Main (string[] args) { Console.WriteLine ("Hello World!"); } } } 使用制度; 名称空间Lab1 { 类主类 { 公共静态void Main(字符串[]args) { Console.WriteLine(“你好,世界!”); } } } 并尝试在F7中构建它。 之后出现错误:错误:/../Lab1/Lab1.csproj:/../Lab1/Lab1/Lab1.csproj无法导入“$(MSBuildBinPath)\Microsoft.CSharp.targets”(Lab1)。
有人有什么建议吗?

我知道现在已经晚了,但就我而言,Mono的目标是一个未安装的.NET版本。这是通过更改目标框架来解决的


我通过在sln文件上运行
xbuild
发现问题:

xbuild myProject.sln
我得到了类似于:

warning : Could not find project file /usr/lib/mono/3.5/Microsoft.CSharp.targets, to import. Ignoring.
警告表示该项目默认以.NET3.5为目标,但我猜该版本没有安装。让我们通过搜索丢失的文件来查找安装的版本:

find /usr/lib/mono -name "Microsoft.CSharp.targets"
在我的机器上,列出了
/usr/lib/mono/4.5/Microsoft.CSharp.targets
,但您可能有不同的.NET版本。忽略xbuild和msbuild路径

无论您所在的位置,请转到您的项目,在解决方案窗格中单击项目旁边的设置按钮(带有gear图像的下拉按钮),然后单击“选项”。然后在“Build”下,您将看到“General”,单击它并将“Target framework”更改为.NET版本,其中文件夹包含Microsoft.CSharp.targets文件。就我而言,这是4.5


希望这对某人有所帮助。

我的问题是我意外地删除了项目的
packages.config
文件。

如果是Mono错误

所以打开项目菜单 选择Build->General并选择已安装的框架

我正在开发3.5,但在mono上只安装了4.5和4.5.1

在选择了框架后,我被问到是否会继续使用2010年或2012年,您可以选择其中一个。 因为最初的程序是用2008和Win7上的3.5编写的。这一定是原因。
我用这种方法解决了问题。

首先,我建议您在项目上以详细模式运行xbuild,并查看MSBuildBinPath扩展到什么。您的系统中有什么版本的mono?是否安装了
mono xbuild