【发布时间】:2010-08-11 02:01:39
【问题描述】:
我已经搜索了两周,每天晚上,详尽地阅读论坛帖子并尝试所有建议的解决方案,无论多么古怪。就像许多关于同一问题的论坛主题一样,该站点在我的开发机器上运行良好。它部署没有错误。它在生产服务器上工作并从数据库中读取数据,但是当它尝试访问配置文件时,它会因此错误而崩溃。
许多帖子说要选中或取消选中名为“删除 app_code.compiled 文件”的选项,但显然这是 Visual Studio 2005 的选项。在 Visual Studio 2010 中找不到它。许多帖子说要确保 App_Code.dll 存在于我的 bin 目录中。它存在。我已经手动删除了 app_code.compile 文件,看看是否有什么不同。我已将目标框架从 4.0 更改为 2.0 和 3.5。我已经在 IIS 中完全删除了该站点,创建了一个具有不同名称的不同文件夹,并使用“允许此预编译站点可更新”和“使用固定命名和单页程序集”的每种组合重新部署了该站点。我已经包含了对 System.Web.Profile 和 System.Web 和 System.Web.Profile.ProfileCommon 的引用。我创建了一个针对 .net framework v4.0 的全新网站,并将该 web.config 文件复制到我的应用程序中,并重新创建了我的配置文件条目,以确保我在此过程中没有在配置文件中添加任何内容。我烧过蜡烛,用过巫毒符咒。我祈祷过。在谷歌和必应的前五页左右,我已经在每个论坛主题上尝试了所有可能的建议,这些建议与此错误有关。我花了 14 天的时间几乎什么都没做,只是试图让这个网站在没有这个错误的情况下出现。
一篇帖子说要确保 bin 目录中存在对 app_code.dll 的引用。我不知道该怎么做,因为它是动态创建的。
有人对此有什么新想法吗?
【问题讨论】:
-
最好有实际错误和一些示例代码或部分堆栈跟踪。
-
这是我的想法:向社区乞求点赞,这样你就可以把它们当作赏金。
-
你有更详细的异常信息,包括堆栈跟踪吗?
-
在您关于同一问题的另一篇文章中,您说这适用于 Casini ...如果您在开发机器上切换到 IIS 会怎样?
-
上周遇到了类似的问题 - 将 ASP.Net 网站项目转换为 Web 应用程序。在前者中,配置文件在 web.config 中以声明方式定义。但是,Web 应用程序项目无法访问动态生成的 app_code DLL(因为它直到运行时才由 .Net 构建)。解决方法是访问配置文件的属性:
ComplexProfileProperty _cpp = (ComplexProfileProperty)HttpContext.Current.Profile.GetPropertyValue("valuename");Hth,抱歉,如果我完全误读了您的问题 - 没有代码示例很难确定 :-)
标签: c# asp.net vb.net visual-studio-2010