【BUG】.NET项目|未能加载文件或程序集“xxx”,或它的某一个依赖项。系统找不到指定的文件的通解
出错代码:
MSBuildWorkspace workspace = CreateWorkspace();
Solution solution = workspace.OpenSolutionAsync(solutionPath).Result;
在OpenSolutionAsync(solutionPath).Result
获取Result的时候一直报错,称未能加载文件或程序集。
但是我系统的.NET
、visual studio
、nuget
等均已经是最高版本。
而且单独打开solutionPath
对应的.sln
工程文件时都能正常编译生成。
偏偏这行报错。
实际上,这个报错还是因为.NET
、MSbuild
版本过低。低版本不兼容高版本的库。
文章目录
- 第一步
- 安装NET 6.0
- 安装最新版Visual Studio
- 更新nuget
- 第二步
- 更新目标框架
- 更新项目依赖
- 第三步
- 第四步
- 总结
第一步
你的系统中需要有更高版本的.NET
、visual studio
、nuget
。
安装NET 6.0
注:现在(2022年6月3日)已经有NET 7.0 preview了,但没有stable,也可以装NET 7.0。
点击下载:下载 .NET 6.0 (Linux、macOS 和 Windows)。
安装最新版Visual Studio
注:现在最新版是VS 2022。
点击进入官网的安装教程:安装 Visual Studio。
更新nuget
运行如下指令:
nuget update -self
注:若上述指令提示称未安装nuget,请先安装。
点击进入NuGet下载页:Available NuGet Distribution Versions。
第二步
更新目标框架
先右键项目,选择项目属性,设置Target Framework(目标框架),改成最新版.NET Framework
或者最新版.NET Core
的框架(就是你当前使用的版本)。
更改完成后,重新编译一次,保证当前修改不影响代码编译,并确定代码能够用于新的框架。
更新项目依赖
右键出错的项目,点击管理NuGet程序包。
然后更新所有依赖:
注意:若你的目标框架未修改,更新将不会成功。
更新依赖后,重新运行代码,就不会出现找不到程序集的报错了。
第三步
倘若一切都是最新版,仍然找不到程序集,这说明你的项目缺少对这个程序集的引用,但又确实用到了该程序集。
这种情况,在NuGet中安装该程序集,即可解决问题。
例如报错未能加载文件或程序集System.IO.FileNotFoundException:“未能加载文件或程序集“System.Runtime.CompilerServices.Unsafe, Version=4.0.4.1, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a”或它的某一个依赖项。系统找不到指定的文件。
。
注:安装时需确保程序集的依赖项符合当前项目的版本。
第四步
倘若第三步找不到报错提到的程序集、或者已经安装了最新版但仍然提示旧版的报错,可考虑引用顺序,或是否安装错了一个程序集。
这一类的典型:
{"未能从程序集“Microsoft.Build.Framework, Version=15.1.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a”中加载类型“Microsoft.Build.Framework.IMetadataContainer”。":"Microsoft.Build.Framework.IMetadataContainer"}
已知Microsoft.Build.Framework
已经安装了17.2.0
,可报错提示说15.1.0.0
中有东西找不到。
即使将using Microsoft.Build.Framework;
这行注释掉,报错提示还是不变
——这是因为,其他的程序集中也有Microsoft.Build.Framework
,它们的版本过低,并且比Microsoft.Build.Framework
先一步被引用。
可以调整using
顺序,也可以安装最新版Microsoft.Build
,直接解决这个问题。
注:
Microsoft.Build.Framework
属于Microsoft.Build
,但在NuGet中被作为两个包发布,假设已经安装Microsoft.Build
,就不需要再安装Microsoft.Build.Framework
。
总结
微软系列的东西最好是全部向最新版看齐。
【BUG】.NET项目|未能加载文件或程序集“xxx”,或它的某一个依赖项。系统找不到指定的文件的通解相关推荐
- 【转】未能加载文件或程序集“XXX”或它的某一个依赖项。试图加载格式不正确的程序。...
"/xxxxx"应用程序中的服务器错误. -------------------------------------------------------------------- ...
- 未能加载文件或程序集“xxx”或它的某一个依赖项。试图加载格式不正确的程序。
"未能加载文件或程序集"xxx"或它的某一个依赖项.试图加载格式不正确的程序."这个错误可能在IIS或VS中出现,一般是平台和dll版本不一致导致的. 一.VS ...
- 未能加载文件或程序集“XXX”或它的某一个依赖项。试图加载格式不正确的程序。(转)...
未能加载文件或程序集"XXX"或它的某一个依赖项.试图加载格式不正确的程序. 作者: 字体:[增加 减小] 类型:转载 时间:2012-11-01 我要评论 如果你将应用程序生成x ...
- 未能加载文件或程序集“xxx”或它的某一个依赖项
未能加载文件或程序集"xxx"或它的某一个依赖项.试图加载格式不正确的程序. 说明: 执行当前 Web 请求期间,出现未处理的异常.请检查堆栈跟踪信息,以了解有关该错误以及代码中导 ...
- 报错:未能加载文件或程序集“XXX”或它的某一个依赖项。系统找不到指定的文件...
解决方案:首先查看UI层是否引用要反射创建的类库,其次从新加载其类库,生成解决方案,启动项目 web.config中配置代码如下: <!--配置节--> <add key=" ...
- 未能加载文件或程序集“XXX”或它的某一个依赖项。试图加载格式不正确的程序...
解决方法:方法一: 怎么也想不起来之前是怎么解决的了,上网找资料,没有一个靠谱的.偶然间查看IIS7.5的应用程序池设置,看到如下设置:(启用32位应用程序) 属性 --常规-- 启用32位应用程序 ...
- 未能加载文件或程序集“xxx”或它的某一个依赖项。生成此程序集的运行时比当前加载的运行时新,无法加载此程序集...
主要原因是 引用的项目 .net 版本与启动的框架不同 我的电脑->右键管理->internet信息服务->默认网站->右键属性->ASP.NET->> 更改 ...
- System.IO.FileLoadException:“未能加载文件或程序集“xxx”或它的某一个依赖项。找到的程序集清单定义与程序集引用不匹配
原因分析:方法对应的程序集所引用组件对应的dll文件与项目文件XXX.csproj中记录的Version,PublicKeyToken等信息不对应 <Reference Include=&quo ...
- System.BadImageFormatException:“未能加载文件或程序集“xxx”或它的某一个依赖项。试图加载格式不正确的程序。”
出现这个问题,请检查工程生成的目标平台是否一致,不一致则会导致这个问题. 希望能解决你碰到的问题,谢谢!!!
- 未能加载文件或程序集“xxx”或它的某一个依赖项。生成此程序集的运行时比当前加载的运行时新,无法加载此程序集
解决办法: 在IIS里配置Silverlight网站时 , 将网站的应用程序池 .net Framework 版本设置为 4.0
最新文章
- Java数据结构简述
- BZOJ1433 [ZJOI2009]假期的宿舍 - 二分图匹配
- wifi定位算法 java_记一次APP的so层算法逆向(七)
- 长庆企业信息化管理课件_详解:企业信息化管理系统,不能马虎对待
- fscanf和feof的组合使用
- [css] 用css3画出一个立体魔方
- WARNING: IPv4 forwarding is disabled. Networking will not work.解决方法
- python 之头像上传,预览
- Qt之布局Layout的应用
- 如何计算加权和及矩阵乘法运算回顾
- SELECT TOP 100 PERCENT
- 计算机绘图读后笔记3000字,0921计算机绘图0.doc
- Redis Desktop Manager 运行时报0xc000007b
- 2013电大计算机综合应用能力实训将邮件保存到考生文件夹,计算机综合应用能力实训指南.doc...
- MATLAB中实现特定像素区域处理
- 栈内存和堆内存的区别
- Android自带人脸识别
- java使用wordcloud生成词云
- java ssl是什么意思_java中SSL是什么?包括哪些内容?
- Trinamic电机驱动芯片 完美替代TI DRV型号大全
热门文章
- script type=text/JavaScript是什么
- 汇率实时行情查询接口
- html 图片比例 js,JavaScript,等比例缩放图片的函数
- 弹性公网ip到底是什么意思?弹性公网ip与公网ip的区别
- 《蔡康永说话之道》书摘
- 什么是PaaS平台 ?
- 分门别类刷leetcode——栈、队列、堆(C++实现)
- win10商店的应用下载移植 注:.appx文件最好在win10使用 附win10商店UWP的安装包
- 测试吃鸡fps软件,GTX1050Ti吃鸡足矣 2017热销游戏本吃鸡横评
- IOS开发之——TOM猫(19)