我无法从静态函数调用非静态函数(或)我想从静态函数调用 javascript 函数。
[WebMethod]
public static void add_items(string itemslist)
{
get_price(itemslist); // Error An object reference is required for non-static
//(or)
ScriptManager.RegisterStartupScript(this,
this.GetType(),
"script",
"<Script language='javascript' "
+ "type='text/javascript'>message();</script>",
false); //Error in this, this
}
protected void get_price(string item_id)
{
}
最佳答案
由于无论您是否实例化该类,静态方法都是可访问的,因此从静态方法访问类成员可能意味着您正在引用堆栈或堆中尚不存在的内容,从而创建一个运行时异常。
因此,如果不首先实例化非静态成员,则不能在静态方法中引用非静态成员,这就是您收到错误的原因。希望这对您有所帮助!
关于c# - 从静态函数调用非静态函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14978332/