-3

我在一个 aspx 页面中有一个 WebMethod,它似乎只返回一个空白页面,我认为它甚至没有被调用,可能是什么原因造成的?

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Data.SqlClient;
using System.Data;
using System.Configuration;
using System.Text;
using System.Web.Script.Serialization;
using System.Web.Services;
using System.Web.Script.Services;

namespace Test.webservices.mainGrid
{
    public partial class getMainGrid : System.Web.UI.Page
    {

        [WebMethod]
        [ScriptMethod(UseHttpGet = true, ResponseFormat = ResponseFormat.Xml)]
        public static string GetRecords()
        {
      return "test";

        }
    }
    }
4

1 回答 1

2

这是一个 ASP.NET AJAX 页面方法,它可以被 JavaScript 调用(例如 ASP.NET AJAX 或 jQuery)。文本test不渲染,因为页面生命周期不知道用这个静态方法做什么;由于您的页面上没有标记或渲染到页面的逻辑,因此您的页面在运行时是空白的。

由于该方法是静态的,它不是实际页面实例的一部分,因此不能由页面类本身的代码调用。为此,当您从脚本调用它时,您将无法访问页面上的其他控件。ASP.NET AJAX 页面方法对于从服务器获取数据以使用客户端非常有用。

要了解有关 ASP.NET AJAX 页面方法的更多信息,请阅读使用 jQuery 直接调用 ASP.NET AJAX 页面方法

在过去的几年里,我在我的 ASP.NET WebForms 项目中广泛使用了 ASP.NET AJAX 页面方法。它们非常适合从服务器获取数据以更新您的用户界面。

于 2013-10-31T15:58:30.177 回答