我在编写一个 ASP.Net 页面时遇到问题,我正在努力诊断该页面失败的原因。
我正在尝试这样做:
Dim st As New StringWriter()
Dim strURL As String = "CourseProgramme.aspx?id=3733"
Context.Server.Execute(strURL, st)
txtNotes.Text = st.ToString()
这里的目的是获取在 strURL 中指定的页面的 HTML,然后将其显示在文本框中。但是,当我运行此代码时,它会使 IIS 中的 ApplicationPool 崩溃,当我查看事件查看器时,我会看到以下错误消息:
为应用程序池“blueprintdev”提供服务的进程与 Windows 进程激活服务发生了致命的通信错误。进程 ID 为“5284”。数据字段包含错误号。
这里奇怪的是,在另一个页面中,我执行了这个工作正常的代码:
Dim strDutyStartDate As Date
strDutyStartDate = TextboxDutyStartDate.Text
Dim st As New StringWriter()
Dim strURL As String = "rosteroutput.aspx?InstructorID=" & Request.QueryString("InstructorID") & "&Instructor=" & Request.QueryString("Instructor") & "&Start=" & strDutyStartDate
Context.Server.Execute(strURL, st)
TextBox1.Text = st.ToString
据我所见,除了我传递的 URL(确实存在)之外,我看不出两者之间的区别。
我正在开发的页面是在带有 .Net 4.0 的 ASP.Net 中,但是在网站上有一些经典的 ASP 页面。IIS 在 Windows Server 2008 R2 64 位上以版本 7.5.7600.16385 运行。
到目前为止,我已尝试将应用程序池设置为在 32 位模式下运行,但这会导致其他区域出现错误,并且该站点将无法加载。我还能做些什么来解决这个问题吗?