Request.Form []在asp.net中的静态方法中不起作用

时间:2012-06-14 13:23:09

标签: asp.net methods static

我在aspx.cs页面中有一个静态的webmethod,我想在该方法中使用Request.Form []但是不支持&说:

非静态字段需要对象引用。 我如何在该Web方法(任何替代使用方式)中使用Request.Form []

此致 Jeet Nim

2 个答案:

答案 0 :(得分:0)

您不能在静态上下文中使用非静态属性。如果您的方法是静态的,则意味着它不应该依赖于被调用的实例(这里您使用的是Request this的属性 - 您的页面。

如果您的方法根据POST数据中的某些内容进行某些计算,那么您应该将其作为方法的参数添加,然后使用Request.Form["something"]作为值调用方法:

public static int MyStaticMethod(string someParameter)
{
    //logic involving someParameter
    return a value based on the logic above
}

//somewhere in your code-behind
if (MyStaticMethod(Request.Form["something"]) == 0) //something something

答案 1 :(得分:0)

如果你回帖,Request.Form有意义。

据我所知,你只需在后面的代码上调用静态函数。在那一刻页面不存在,你完整的回帖填写表格

  

使用

的任何替代方式

正确的方法是将数据作为参数发送给函数。