aspx.csページに静的なWebメソッドが1つあります。そのメソッドでRequest.Form[]を使用したいのですが、サポートされていません。
非静的フィールドにはオブジェクト参照が必要です。そのWebメソッドでRequest.Form[]を使用するにはどうすればよいですか(別の使用方法)
よろしくJeetNim
ポストバックRequest.Form
すると意味があります。
私が理解していることから、コードビハインドで静的関数を呼び出すだけです。その時点でページは存在しません。フォームに記入するために完全な投稿を返す必要はありません。
別の使用方法
正しい方法は、データをパラメーターとして関数に送信することです。
静的コンテキストで非静的プロパティを使用することはできません。メソッドが静的である場合、呼び出されるインスタンスに依存してはならないことを意味します (ここでは、ページ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