使用iframe的.aspx页面中的ASPX页面会引发500.23错误

时间:2012-01-18 03:03:24

标签: asp.net iis iframe iis-7.5

我正在尝试使用ChartModule.aspxDefault.aspx页面中嵌入iframe页面。

ChartModule有一个更新图表的按钮事件。 ChartModule有自己的ChartsModule.cs

我收到了这个错误:

  

HTTP错误500.23 - 内部服务器错误已设置ASP.NET设置   检测到不适用于集成管理管道模式。最多   可能的原因:

     

•此应用程序定义system.web / httpHandlers中的配置   部分。您可以尝试的事项:•将配置迁移到   system.webServer / handlers部分。您可以手动或使用   来自命令行的AppCmd。例如,来自IIS Express   安装目录,运行appcmd migrate config“默认网站/”。   使用AppCmd迁移您的应用程序将使其能够工作   集成模式。它将继续在经典模式下工作   以前的IIS版本。 •如果您确定可以忽略   此错误,可以通过设置禁用   system.webServer/validation@validateIntegratedModeConfiguration to   假。 •或者,将应用程序切换到经典模式   应用程序池。例如,从IIS Express安装目录,   运行appcmd set app“默认网站/”   / applicationPool: “Clr4ClassicAppPool”。只有在你不能的时候才这样做   迁移您的应用程序。

     

详细错误信息:Module ConfigurationValidationModule   通知BeginRequest处理程序
  PageHandlerFactory-Integrated-4.0错误代码0x80070032请求   网址http://localhost:4161/Default.aspx物理路径
  C:\ Documents and   设置\ singhm \ Desktop \ Temp \ Trial2 \ Trial2 \ Default.aspx登录方法   尚未确定登录用户尚未确定请求跟踪   目录

为什么会这样?

3 个答案:

答案 0 :(得分:1)

虽然这可能无法直接回答您的问题,但这是一个想法:

如果您可以选择,请考虑将ChartModule.aspx转换为UserControlascx),其行为就像另一个“页面”(相同的生命周期,自己的代码隐藏文件等)但更整洁地集成到现有的aspx页面中。上面的链接应该是创建和使用UserControls的一个很好的介绍。

答案 1 :(得分:1)

错误消息包含解决方案的线索:

  

system.webServer/validation@validateIntegratedModeConfiguration设为false

因此,请确保web.config中存在以下内容:

<validation validateIntegratedModeConfiguration="false"/>

例如:

<configuration>

  <!-- your existing settings -->

  <system.webServer>

    <!-- Add this to here.... -->
    <validation validateIntegratedModeConfiguration="false"/>

  </system.webServer>
</configuration>

IIS 7和ASP.NET现在对于其中包含的错误消息和提示非常有帮助,因此您应该花时间阅读它们。

答案 2 :(得分:0)

我真的建议在asp.net中使用usercontrol页面而不是iframe,这样你可以通过执行

绑定该用户控件
public override DataBind()

您可以将任何内容传递到该用户控制页面,如刷新数据,加载某些数据等。