C#项目复制到另一台电脑后,NuGet包相关报错解决

在从别的电脑拷贝过来C#项目后,如果Visual Studio打开项目报错:

报错:当前 . NET SDK 不支持将 .NET Core 2.1.1 设置为目标。请将 .NET Core 2.1 或更低版本设置为目标,或使用支持 .NET Core 2.1.1 的 .NET SDK 版本。

可能是Visual Studio版本不一致,导致 .NET Core版本也不一致,首先可以用文本编辑器打开项目的.sln文件,确认该项目使用哪个版本Visual Studio创建,最好也使用该版本。

如果报错NuGet包还原失败,或者下面的两个报错:

错误	MSB4018	“ResolvePackageAssets”任务意外失败。
NuGet.Packaging.Core.PackagingException: 无法找到回退包文件夹“C:\Program Files (x86)\Microsoft Visual Studio\Shared\NuGetPackages”。
   在 NuGet.Packaging.FallbackPackagePathResolver..ctor(String userPackageFolder, IEnumerable`1 fallbackPackageFolders)
   在 Microsoft.NET.Build.Tasks.NuGetPackageResolver.CreateResolver(IEnumerable`1 packageFolders)
   在 Microsoft.NET.Build.Tasks.NuGetPackageResolver.CreateResolver(LockFile lockFile)
   在 Microsoft.NET.Build.Tasks.ResolvePackageAssets.CacheWriter..ctor(ResolvePackageAssets task)
   在 Microsoft.NET.Build.Tasks.ResolvePackageAssets.CacheReader.CreateReaderFromDisk(ResolvePackageAssets task, Byte[] settingsHash)
   在 Microsoft.NET.Build.Tasks.ResolvePackageAssets.CacheReader..ctor(ResolvePackageAssets task)
   在 Microsoft.NET.Build.Tasks.ResolvePackageAssets.ReadItemGroups()
   在 Microsoft.NET.Build.Tasks.ResolvePackageAssets.ExecuteCore()
   在 Microsoft.NET.Build.Tasks.TaskBase.Execute()
   在 Microsoft.Build.BackEnd.TaskExecutionHost.Microsoft.Build.BackEnd.ITaskExecutionHost.Execute()
   在 Microsoft.Build.BackEnd.TaskBuilder.d__26.MoveNext()	zj.pc.cache	C:\Program Files\dotnet\sdk\3.1.403\Sdks\Microsoft.NET.Sdk\targets\Microsoft.PackageDependencyResolution.targets	241	

错误	NETSDK1064	未找到版本为 5.0.0 的包 Microsoft.Win32.SystemEvents。它可能已在 NuGet 还原后删除。否则,NuGet 还原可能只是部分完成,这种情况可能是最大路径长度限制所导致。	zj.pc.cache	C:\Program Files\dotnet\sdk\3.1.403\Sdks\Microsoft.NET.Sdk\targets\Microsoft.PackageDependencyResolution.targets	241	

可能是因为本地NuGet目录中缺少运行需要的包,需要:

1、打开Visual Studio->工具->选项->NuGet包管理器,

2、在常规中,程序包还原下面两项全部选中(默认选中的)

3、程序包源中,如果没有添加NeGut路径https://api.nuget.org/v3/index.json,点击右上角的加号按钮 ,添加一个新的Nuget源选项,名称随便取,源填写https://api.nuget.org/v3/index.json。然后点击更新,确定即可。如果https://api.nuget.org/v3/index.json不能访问,则添加一个新路径添加一个新的路径为https://www.nuget.org/api/v2。

4、如果有源包源勾掉禁用,没有忽视

 

然后编译,如果还报错的话,打开Visual Studio->工具->NuGet包管理器->管理解决方案的Nuget包,出现

C#项目复制到另一台电脑后,NuGet包相关报错解决_第1张图片

PM>出现后,执行 dotnet build命令,待执行完,如果有没有成功的,继续执行,都成功了再调试。可能就搞定了。

C#项目复制到另一台电脑后,NuGet包相关报错解决_第2张图片

 

你可能感兴趣的:(C#,c#,visual,studio)