warning MSB3245: 未能解析此引用。未能找到程序集“CemeteryBLL”。请检查磁盘上是否存在该程序集。 如果您的代码需要此引用,则可能出现编译错误。

Posted 凌晨10点13分

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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”。请检查磁盘上是否存在该程序集。 如果您的代码需要此引用,则可能出现编译错误。的主要内容,如果未能解决你的问题,请参考以下文章

npm error MSB3428: 未能加载 Visual C++ 组件“VCBuild.exe”。要解决此问题,1) 安装

npm error MSB3428: 未能加载 Visual C++ 组件“VCBuild.exe”。要解决此问题,1) 安装

MSBUILD : error MSB3428: 未能加载 Visual C++ 组件“VCBuild.exe”。要解决此问题,1) 安装 .NET Framework 2.0 SDK;2) 安装 M

error MSB8011: 未能注冊输出。请尝试启用“逐用户重定向”

解决warning MSB8012:问题

windows下编译caffe报错:error MSB4062: 未能从程序集 E:NugetPackagesOpenCV.2.4.10......的解决办法