日期:2014-05-18  浏览次数:20424 次

在ASP.NET AJAX中如何通过pagemethods在服务器端取得数据,并在服务器端把数据绑定到GridView中。
现在已经可以在服务器端通过PageMethods取得数据,但是在服务器端无法把已经取得的数据绑定到GridView中。
代码如下:

[WebMethod]
  [System.Web.Script.Services.ScriptMethod]
  public static DataTable CreateData()
  {
  DataTable dt = new DataTable();
  dt.Columns.Add("name");
  dt.Columns.Add("id");

  for (int i = 0; i < 8; i++)
  {
  DataRow dr = dt.NewRow();
  dr["name"] = "xuebin" + (i + 1);
  dr["id"] = (i + 1);

  dt.Rows.Add(dr);
  }

  this.GridView1.DataSource = dt;
this.GridView1.DataBind();

  return dt;
  }

程序一编译就会报错,说是

关键字“this”在静态属性、静态方法或静态字段初始值设定项中无效[b][/b]


应该如何操作,请高手指点。


------解决方案--------------------
以script service形式调用CreateData方法时,并没有回刷页面,所以无法获得HttpContext.Current,也就无法操作任何实例化的控件,与ajax method类似