如何访问静态Web方法中的页面控件?

7 c# asp.net static pagemethods

我使用静态WebMethod方法使用jQuery调用了一个代码隐藏方法.

该Web方法调用是成功的,但是当试图访问文本框控件时,它给出了错误.非静态字段,方法或属性需要对象引用.

[WebMethod]    
public static Savedata()
 {
     //code to insert data to DB

     //after inserting data successfully i need to change the text box text like following.        
      txtStatus.Text="Data Received";   
 }
Run Code Online (Sandbox Code Playgroud)

Ath*_*hul 9

如@Tim Schmelter所述这不回答这个问题,因为你无法从web方法访问页面的控件.

请通过 asp.net访问静态函数的控件

__PRE__

上述方法用于查找控制值.[WebMethod]的重点是它们不运行ASP.Net页面生命周期.这样,它们快速且可并行化.您的控件不存在.

你的问题是如何在静态方法中获得控件的重复

  • 这不回答这个问题,因为您无法从web方法访问页面控件.所以也许它对未来的读者有帮助,因为标题但是这个问题的答案是错误的. (6认同)

Pat*_*man 5

对于Web方法,接受的答案是错误的.

正如Tim Schmelter在评论中正确提到的那样:

您无法从Web方法访问页面控件

这是真的,因为Web方法不带有页面状态.这不是一个完整的回发.相反,会话cookie随请求一起传播.您必须执行整页回发以获取或设置控件值.