1

我正在尝试使用 PageMethods 从服务器端调用一个函数,但我收到一个错误,即 PageMethods 未定义。

这是我放入 html 的内容

            <asp:ScriptManager ID="ScriptManager1" runat="server"   
  EnablePageMethods="True">

这是后面代码中的函数。

    <System.Web.Services.WebMethod()> _
Public Function LoadChild(ByVal EntityID, ByVal EntityCat, ByVal lnType, ByVal FullExpand, ByVal lnEquip, ByVal lnTemplate) As String

这是使用页面方法对函数的调用。

PageMethods.LoadChild(lnEntityID, lnEntityCat, GLOBALEQUIPID, FullExpand, 0);

谁能明白为什么我会不断收到 PageMethods undefined 错误?谢谢你。

编辑 - 部分问题可能是因为该功能未共享,但是当共享时,我在大约 15 个地方收到此错误。- 这是指我正在使用的会话 - 这是正在使用的会话的片段,显示错误。

prm4.Value = Session.Item("user_id")

我收到以下错误消息下划线的单词 session - 有关如何解决此问题的任何建议?这可以一起解决整个问题。

错误 305 不能在没有类的显式实例的情况下从共享方法或共享成员初始化程序中引用类的实例成员。

4

1 回答 1

6

页面方法应该是静态(C#)/共享(VB.NET)方法。否则它不起作用。是的,您不能在静态方法中引用实例属性。要获取Session对象,您可以使用HttpContext.Current.Session.

于 2012-04-25T18:14:44.133 回答