How to get controls in static web method

谁都会走 提交于 2019-11-27 19:42:10

问题


I have a [WebMethod] and i want to assign values to a text box using the this code:

[WebMethod]
public static void MyMethod(string s)
{
     //TextBox1.Text = s;   //Here how can i access the textbx?
}

回答1:


You can't.

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.

Instead, you should use Javascript (better) or an UpdatePanel (worse).




回答2:


in case of static method(ie, page method asynchronous call), whole page is not posted back..and hence there is no information on server about the page controls(textbox or whatever)..

server doesn't retain the state of any of the controls or so while rendering unless made to do so(session or any other state management)..

So if you want to work one the values of the page controls, send such information in the asynchronous request itself and work on those values and return the response..and assign it to respective controls back in client side script..



来源:https://stackoverflow.com/questions/8967763/how-to-get-controls-in-static-web-method

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!