0

aspx.csページに静的なWebメソッドが1つあります。そのメソッドでRequest.Form[]を使用したいのですが、サポートされていません。

非静的フィールドにはオブジェクト参照が必要です。そのWebメソッドでRequest.Form[]を使用するにはどうすればよいですか(別の使用方法)

よろしくJeetNim

4

2 に答える 2

0

ポストバックRequest.Formすると意味があります。

私が理解していることから、コードビハインドで静的関数を呼び出すだけです。その時点でページは存在しません。フォームに記入するために完全な投稿を返す必要はありません。

別の使用方法

正しい方法は、データをパラメーターとして関数に送信することです。

于 2012-06-14T13:45:58.370 に答える
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
于 2012-06-14T13:35:43.627 に答える