gpt4 book ai didi

jquery - ASP.NET AJAX PageMethods 调用加载 .NET 4.5 IIS 7.5 的整个页面

转载 作者:行者123 更新时间:2023-12-01 00:02:56 24 4
gpt4 key购买 nike

我正在 aspx 页面的代码隐藏中调用 pageMethod。我得到整个页面的响应而不是 webMethod 响应。另外,我尝试使用 jquery 调用相同的 webMethod 并获得整个页面作为响应。

Client:

<asp:ScriptManager ID="scriptManager1" runat="server" EnablePartialRendering="True"
EnablePageMethods="true" EnableScriptGlobalization="true" EnableScriptLocalization="true" >

function TestNumber() {
PageMethods.getNumber(ResponseTest);
}

function ResponseTest(response){
var num = response.d;
}

CodeBehind:

[WebMethod]
public static int getNumber()
{
return accountNumber;
}

我正在使用 .NET 4.5.1 和 IIS7.5,我认为该问题与 VS2013 中内置的无扩展 URL 相关。我正在使用以下 web.config sys.webserver

  <system.webServer>
<validation validateIntegratedModeConfiguration="false" />
<modules runAllManagedModulesForAllRequests="true">
<remove name="ScriptModule" />
<add name="ScriptModule" preCondition="managedHandler" type="System.Web.Handlers.ScriptModule, System.Web.Extensions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
</modules>
<handlers>
<remove name="ExtensionlessUrlHandler-Integrated-4.0" />
<remove name="OPTIONSVerbHandler" />
<remove name="TRACEVerbHandler" />
<add name="ExtensionlessUrlHandler-Integrated-4.0" path="*." verb="*" type="System.Web.Handlers.TransferRequestHandler" preCondition="integratedMode,runtimeVersionv4.0" />
</handlers>
</system.webServer>

我通过 Jquery ajax 调用尝试了相同的操作并获得了整个页面。我错过了什么吗?

最佳答案

友好 URL(作为默认项目模板一部分的无扩展名 URL 库)不支持调用 [WebMethod] 例程。如果必须使用 [WebMethod],请从项目中卸载友好 URL。这可以通过 Nuget Package Manager window 来完成.

删除此包后,您可能需要修复项目和 Web.config 文件中的链接以重新添加缺少的 .aspx 扩展名。

关于jquery - ASP.NET AJAX PageMethods 调用加载 .NET 4.5 IIS 7.5 的整个页面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21720337/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com