梁身定做
技术迷

  最近在开发项目中,遇到了一个问题.在本机开发中部署到本机iis上或者本机控制台都没有问题,运行正常.当发布部署到服务器(windowsServer)中的时候一直运行不起来,用控制台也运行不起来,直接报错.

  怎么更新版本都无法解决.最终看报错信息是因为Microsoft.ApplicationInsights.AspNetCore不存在,找不到.最后在项目中引用它并且发布,发现它并未在发布文件中出现.这是为什么呢?经过查找资料发现是因为VS打包的时候默认认为有一些程序集服务器上是存在的,所以就不把它打包进去.导致程序找不到程序包而异常.可能是我们的服务器版本过低的原因吧,我们服务器上是没有这些程序包的.那怎么让VS打包的时候把这些程序包也一并打包进来呢?其实很简单,只需要一句话而已.

  打开项目目录下的csproj文件(记事本打开即可).

  

  然后加上一句代码:

  

  这句话的目的是告诉ide发布的时候把所有用到的程序包都打包出来.然后点击发布.结果发布文件下面多了好多好多的程序集以及其他文件.这时候再把发布文件发布到服务器的iis上的时候运行会发现一切都变得那么美好了.

  

 

posted on 2018-06-13 16:23  梁身定做  阅读(291)  评论(0编辑  收藏  举报