我正在创建一个小网站,其中包含一个asp页面,其代码隐藏以及包含一些库代码的附加项目。我可以在Visual Studio开发环境中运行它,并且它都是spiffing。
我使用FileSystem方法发布此网站(我无法使Web部署或FTP工作,但这是另一个问题)到本地目录,然后将生成的文件复制到服务器。
在调用网站时,我得到了最喜欢的错误: -
无法加载程序集' App_Web_qwertyuiop'。确保它是 在访问页面之前编译。
我已查看了here提供的解决方案。我不理解接受的答案,我已经检查过应用程序池在编译代码时运行相同的.Net框架。其他答案不适用,据我所知。
here给出的答案没有任何意义。根据建议here,任何Temporary ASP.NET Files
文件夹中都没有文件,并且根据建议修改web.config
并不能解决问题。我已根据建议here修复了权限,上一个回答中给出的选项在我的IIS版本中不存在。
还有什么我可以尝试的吗?
修改我使用网站在我的IIS中创建了网站 - >添加网站。这些文件位于目录C:\inetpub\wwwroot\mywebsite
;这包含一个目录\bin
,其中找到了文件App_Web_qwertyuiop
,以及库函数的dll。
答案 0 :(得分:0)
您是否在IIS中为此创建了应用程序或虚拟目录?您还将应用程序的二进制文件复制到应用程序目录的文件夹中,或直接复制到应用程序目录中。后者是我们应该做的。你可以尝试一下,看看它是否有帮助!
答案 1 :(得分:0)
它可能是应用程序池的一个问题,所以每当你在IIS服务器上传你的网站时,首先要重新循环你的应用程序池并在浏览器上浏览你的网站。
答案 2 :(得分:0)
您是否可以启用IIS日志,看看是否收到任何错误或详细的问题堆栈。
从基本概念来看,似乎asp.net正在快速生成程序集并写入磁盘或直接加载到内存中。出于某种原因,要么它无法写入磁盘,要么以某种方式装配加载失败。
在这种情况下,您可以尝试使用Fusion Log工具。这可能会让您知道装配绑定失败的原因以及它试图加载此装配的所有内容。