【发布时间】:2008-11-17 15:43:27
【问题描述】:
我似乎无法弄清楚我在这里做错了什么。我将我的网站发布到我的服务器,当我尝试运行它时,出现以下异常:
无法加载程序集“App_Web_kh7-x3ka”。确保在访问该页面之前已对其进行编译。
有没有其他人遇到过这种情况?
【问题讨论】:
标签: asp.net
我似乎无法弄清楚我在这里做错了什么。我将我的网站发布到我的服务器,当我尝试运行它时,出现以下异常:
无法加载程序集“App_Web_kh7-x3ka”。确保在访问该页面之前已对其进行编译。
有没有其他人遇到过这种情况?
【问题讨论】:
标签: asp.net
当您获取预编译的 aspx 页面并像未编译一样对其进行编辑时也会发生这种情况,例如从 Live 服务器复制它并覆盖您的开发/工作版本。
在 <%@Page /> 标记内的 aspx 页面的第一行,您可能会看到如下属性:
inherits="yourPageClass, App_Web_kh7-x3ka"。
删除“App_Web_XXXX”部分并添加指向您的代码隐藏文件的 CodeFile 属性:
CodeFile="yourPageFile.aspx.cs"
<%@Page /> 标记现在看起来应该类似于您从头开始创建新页面时的样子。
当您的 Asp.Net 页面被预编译以发布到生产服务器时,对后面代码的引用将替换为对具有 App_Web_XXXX 名称的已编译 DLL 的引用。
【讨论】:
“确保在访问页面之前对其进行编译”的快速 google。
把我带到了下面
问题可能如所述,应用程序池/网站未设置为正确的 .NET 版本
以下问题有另一种解决方案作为最后的回复 http://forums.asp.net/t/1131537.aspx
从查找来看,您的网络服务器似乎配置不正确,或者您引用的是不存在/旧的 dll
【讨论】:
最近,我们的一个预编译网站一夜之间就出现了这个问题。原来我们服务器的防病毒软件正在默默地隔离其中一个已编译的 DLL 文件。 (显然我的代码类似于更新劫持者......迷人)
这个问题的原因有点离谱,但希望它在未来对其他人有所帮助。
【讨论】:
如果您使用 BitBucket Source Tree(例如使用 Azure),默认情况下 Soruce Tree 不会上传 .DLL 文件。 你需要去 -> Source Tree>Tools>Options>Git>Global Ignore List [Edit File] 删除 *.Dll 行并保存文件。
重建你的项目(你不需要),提交代码,推送代码!
您的网站应该开始工作了...
【讨论】: