How to access page controls inside a static web method?

I have called a Code behind method using jQuery using a static WebMethod method.

That web method call was success but when tried to access a text box control it is giving error. An object reference is required for the non-static field, method, or property.

[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";   
 }

Answers:

Thank you for visiting the Q&A section on Magenaut. Please note that all the answers may not help you solve the issue immediately. So please treat them as advisements. If you found the post helpful (or not), leave a comment & I’ll get back to you as soon as possible.

Method 1

As mentioned by @Tim Schmelter This doesn’t answer this question because you can’t access page’s controls from a webmethod.

Please go through
asp.net access a control from static function

The whole point of [WebMethod]s is that they don’t run the ASP.Net page lifecycle. This way, they’re fast and parallelizable.
Your controls don’t exist.

your question is duplicate of How to get controls in static web method

Method 2

The accepted answer is wrong for web methods.

As Tim Schmelter mentioned correctly in a comment:

you can’t access page’s controls from a webmethod

That is true since web methods don’t carry the page state. It isn’t a full postback. Instead just the session cookie travels with the request. You have to do a full page postback to get or set the control values.


All methods was sourced from stackoverflow.com or stackexchange.com, is licensed under cc by-sa 2.5, cc by-sa 3.0 and cc by-sa 4.0

0 0 votes
Article Rating
Subscribe
Notify of
guest

0 Comments
Oldest
Newest Most Voted
Inline Feedbacks
View all comments
0
Would love your thoughts, please comment.x
()
x