iis站点运行错误:Could not load file or assembly 'EntityFramework' or one of its dependencies.


错误描述:

Could not load file or assembly 'EntityFramework' or one of its dependencies. The parameter is incorrect. (Exception from HRESULT: 0x80070057 (E_INVALIDARG))


站点运行错误,描述为不能load某个dll或者其依赖项,任何dll都可能。

错误原因为参数错误。

什么参数错误?

  
    
      
        
      
    
    
      
    
  

肯定不是这个parameter = mssqllocaldb


好吧,其实它发生的时候,刚好是因为电脑突然蓝屏,重启后就一直发生。同样的代码,在别人那里不能重现此错误,很明显的是环境问题


解决方案:

1. 删除站点及ApplicationPool,使用原来的站点名字等,重建。

曾为同事的电脑如此修复过,也有成功的时候,但,不是完全。

2. 重建新的站点及ApplicationPool,使用新的站点名字等,创建。

可完全修复,只不过要放弃原来的站点名字。


原因解析:

iis自有机制,虽然在创建站点时,物理路劲可以任意指定,但事实上,iis还会从物理路径里取出文件,进行必要的编译(如存在代码片段的*.aspx,*.cshtml),并把编译后的文件放到临时目录里。

临时目录路径:C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Temporary ASP.NET Files\

临时目录里文件夹的名字是根据站点名字哈希而来,哈希规则不得而知。但站点名哈希后一定是唯一的。

以上原因分析,仅是个人猜测,没有官方文献。

你可能感兴趣的:(iis站点运行错误:Could not load file or assembly 'EntityFramework' or one of its dependencies.)