warning MSB3245: 未能解析此引用。未能找到程序集“CemeteryBLL”。请检查磁盘上是否存在该程序集。 如果您的代码需要此引用,则可能出现编译错误。
多层架构,在每次重新生成解决方案的时候,老是提示:warning MSB3245: 未能解析此引用。未能找到程序集“CemeteryBLL”。请检查磁盘上是否存在该程序集。 如果您的代码需要此引用,则可能出现编译错误。
但是如果逐个生成,那就没问题。这是因为在多层架构中,项目之间有引用关系,比如三层架构,UI界面层引用了BLL业务层,BLL业务层引用了DAL数据层,如果我们全部生成解决方案,它生成的顺序如果不是先从DAL再BLL最后UI层,则会提示上面那个错误。因为如果先生成UI层,那么生成的时候,会将dll程序集全部删掉,然后再生成dll,此时已经将之前引用的dll都删除了,这时候 如果先生成UI成,那么UI的BIN 目录里面是没有BLL层的dll程序集的,所以会提示未能找到程序及xxx。总之如果项目之间有引用关系,如果生成整个解决方案的时候,提示这个错误,那么基本上是因为没有设置项目之间的依赖关系,那么VS生成的时候就会按自己的生成顺序来生成。VS的生成顺序是根据项目之间的依赖关系(不是引用关系:比如UI引用了BLL),所以这个问题的解决方案是设置项目之间的依赖关系。那么如何设置依赖关系呢?
右键解决方案->属性->项目依赖项,切换项目下拉框,逐个切换然后勾选该项目所依赖的项目,比如:选中UI层,则勾选BLL层和Model层;选中BLL层,则勾选DAL层和Model层;选中DAL层,则勾选Model层。这样设置后,VS生成顺序就会改为先生成Model,再生成DAL,然后BLL,最后UI层。这样就不会提示上面那个错误了。
warning MSB3245: 未能解析此引用。未能找到程序集“CemeteryBLL”。请检查磁盘上是否存在该程序集。 如果您的代码需要此引用,则可能出现编译错误。的更多相关文章
- 20190620_二次开发BarTender打印机时,未能解析主引用“Seagull.BarTender.Print, Version=1.0.0.0, Culture=neutral, processorArchitecture=x86”
错误提示: 严重性 代码 说明 项目 文件 行 禁止显示状态警告 未能解析主引用"Seagull.BarTender.Print, Version=1.0.0.0, Culture=neut ...
- 未能在全局命名空间中找到类型或命名空间名称“Wuqi”
下载了AspNetPager控件用以进行分页操作,在项目中放入控件后,运行报错:未能在全局命名空间中找到类型或命名空间名称“Wuqi” . 解决办法:在项目下拉框“引用“中添加AspNetPager引 ...
- 未能解析此远程名称: 'api.ucpaas.com'
未能解析此远程名称: 'api.ucpaas.com' 这个问题的原因不是云之讯,而是(我用的是阿里云)云服务器的DNS解析的问题 或者是云服务器后台的安全组规则的问题, 应该把内网入方向和内网出 ...
- 未能解析目标框架“.NETFramework,Version=v4.0”的 mscorlib的解决方法
本人菜鸟一个,在编码过程中遇到的问题记录下以备忘,高手别笑.最近在做一个项目,公司的VS版本是2010,家里的VS版本是2012.把公司的项目用2012打开后再用2010打开就出现 未能解析目标框架“ ...
- 未能解析此远程名称:'nuget.org' 的解决方法
今天用Nuget下一个程序包时,发现Nuget挂了: 未能解析此远程名称:'nuget.org' . 浏览器打开 http://nuget.org 失败. 使用cmd命令 输入nslookup n ...
- vs2012 Nuget错误:“未能解析此远程名称api.nuget.org”
今天在使用vs2012的Nuget功能向新建MVC项目中添加bootstrap时出现一个错误:“未能解析此远程名称api.nuget.org”: 网上查阅资料得知:nuget.org使用的godadd ...
- 未能解析此远程名称:'nuget.org'
今天用Nuget下一个程序包时,发现Nuget挂了:未能解析此远程名称:'nuget.org'.第一反应就是方校长抖威风了,挂个代理上 http://nuget.org 试了下,果然好好的. 用命令n ...
- [C#错误] 未找到类型或命名空间名称" " (是否缺少 using 指令或程序集引用?)
现象:编译项目时提示未找到类型或命名空间名称" " (是否缺少 using 指令或程序集引用?)解决方法:如果是未找到类型,检查是否引用了类型所在的命名空间,使用using指令.如 ...
- docker build 错误 /usr/share/dotnet/sdk/2.1.801/Microsoft.Common.CurrentVersion.targets(2106,5): warning MSB3245: Could not resolve this reference
docker dotnet Restore 的时候报错, 一度怀疑是linux的dotnet core sdk没有装好, 卸了装, 装了卸, 试了好几遍还是无效(Microsoft.Common.Cu ...
随机推荐
- Android 监听软键盘点击回车及换行事件
mEditText.setOnEditorActionListener(new TextView.OnEditorActionListener() { @Override public boolean ...
- Android Set与List之间转化
List list = new ArrayList(set); Set set = new HashSet(list); //但是有一点,转换当中可能要丢失数据,尤其是从list转换到set的时候,因 ...
- JS错误记录 - getStyle代替offset、任意值运动框
本次练习错误总结: 1. 改变border的宽度,属性名称不是直接写border,而是borderWidth. 2. 运动函数 -- 清除定时器 -- 开启新的定时器. 不是在新定时器开启之后再清除 ...
- [Angular] New async 'as' syntax and ngIf.. else
From Anuglar v4 above, we are able to using 'as' with async pipe. This allow as using 'new variable' ...
- HDU - 3341 Lost's revenge(AC自己主动机+DP)
Description Lost and AekdyCoin are friends. They always play "number game"(A boring game b ...
- Log4net.confager配置官方文档
http://logging.apache.org/log4net/release/config-examples.html
- 【Codeforces Round #435 (Div. 2) C】Mahmoud and Ehab and the xor
[链接]h在这里写链接 [题意] 让你组成一个n个数的集合,使得这n个数的异或和为x; x<=1e5 每个数最大1e6; [题解] 1e5<=2^17<=2^18<=1e6的 ...
- SoC编译HEX脚本(基于RISC-V的SoC)
SoC编译HEX脚本(基于RISC-V的SoC) 脚本使用 ./compile hello 脚本:设置RISC-V工具链riscv_set_env ############## RISC-V #### ...
- Declarative Widgets is a QML plugin that adds Qt Widgets support to QML
05.04.2018 Nathan Collins 8 comments FacebookTwitterGoogle+LinkedInEmail Declarative Widgets is a ...
- [array] leetCode-1-Two Sum-Easy
leetCode-1-Two Sum-Easy descrition Given an array of integers, return indices of the two numbers suc ...