asp.net – 从IIS6向IIS7.5移动AJAX调用,在System.Web.Handlers.
发布时间:2020-12-16 09:39:09 所属栏目:asp.Net 来源:网络整理
导读:我正在Win2003Srv上的IIS6下对WebMethod进行 AJAX调用,这样可以正常工作: System.Web.Services.WebMethod() _Public Shared Sub EmailManagers() 'codeEnd Sub 使用这样的AJAX调用: function EmailManagers_Click() { alert('staring email send'); $.ajax
我正在Win2003Srv上的IIS6下对WebMethod进行
AJAX调用,这样可以正常工作:
<System.Web.Services.WebMethod()> _ Public Shared Sub EmailManagers() 'code End Sub 使用这样的AJAX调用: function EmailManagers_Click() { alert('staring email send'); $.ajax({ type: "POST",//url: "EACApprovalOverview.aspx/EmailManagers(" + document.URL + ")",url: "EACApprovalOverview.aspx/EmailManagers",data: "{}",contentType: "application/json; charset=utf-8",dataType: "json",success: function (msg) { alert("Emails Sent!"); },fail: function (msg) { alert("Email Send Failed!"); } }); alert('end email send'); return false; }; 当我在Win2008Srv上的IIS7.5下运行此应用程序时,我得到“对象引用未设置为对象的实例”.这是堆栈跟踪: [NullReferenceException: Object reference not set to an instance of an object.] System.Web.Handlers.ScriptModule.OnPostAcquireRequestState(Object sender,EventArgs eventArgs) +162 System.Web.SyncEventExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() +68 System.Web.HttpApplication.ExecuteStep(IExecutionStep step,Boolean& completedSynchronously) +75 我在帖子中看到的其他错误在堆栈跟踪的顶部包含一个额外的行,如下所示: at System.Web.Script.Services.WebServiceData.GetMethodData(String methodName) at System.Web.Handlers.ScriptModule.OnPostAcquireRequestState(Object sender,EventArgs eventArgs) at System.Web.HttpApplication.SyncEventExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() at System.Web.HttpApplication.ExecuteStep(IExecutionStep step,Boolean& completedSynchronously) 由于我没有进入WebServiceData.GetMethodData调用,我猜测System.Web.Handlers未正确加载,导致ScriptModule为null. 我在web.config中有这个: <httpModules> <add name="ScriptModule" type="System.Web.Handlers.ScriptModule,System.Web.Extensions,Version=3.5.0.0,Culture=neutral,PublicKeyToken=31BF3856AD364E35"/> </httpModules> 我确保安装了.net 3.5 sp1.我甚至检查了GAC,dll就在那里.我在俯瞰什么? 解决方法
在新的aspx中实现新的页面方法之后,在NullReferenceException中
OnPostAcquireRequestState也发生在这里.它只发生在实时服务器上,但不发生在开发服务器上. 问题是通过仅复制预编译的Web部署项目中的bin目录来更新实时服务器.因为该站点是预编译的并且是通配符处理程序,所以aspx在没有aspx物理存在的情况下显示正常. 但是调用页面方法需要存在aspx,因此在将预编译的占位符aspx复制到实时服务器之后,页面方法再次起作用. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- 将旧版ASP.NET应用程序转换为MVC3和HTML5
- asp.net-mvc – Linq离开外连接不起作用
- 有哪些工具可用于向ASP.NET项目添加本地化?
- 为什么在发送到asp.net web方法之前jquery不将我的数组转换
- asp.net-mvc – ASP.NET MVC:部分知道它是否是从另一个页面
- ASP.NET MVC5+EF6+EasyUI 后台管理系统(65)-MVC WebApi 用
- asp.net-mvc – Server 2008 R2上的MVC – 如何?
- asp.net-mvc – DisplayFormat未应用于十进制值
- asp.net – 用户控件托管在IE中呈现为一个文本框
- asp.net-mvc – 此模板试图加载组件程序集Microsoft.Visual