1. ホーム
  2. c#

[解決済み] ASP.Netフォームに送信されたポストデータを読み込む

2022-11-06 11:17:45

質問

asp.netのアプリケーションで、ログインフォームが動作しています。 ユーザー名とパスワードのテキストボックスとログインを処理するためのボタンがある標準的なものです。 正常に動作します。

私は、ユーザーが私のasp.netアプリケーションの一部ではない別のプレーンhtmlページからユーザー名とパスワードを入力することを許可する新しい要件を持っています。 私は、フォーム、入力、送信ボタンなどの標準的な html を使用して、これを達成することを計画しています。 フォームのアクションは、私のasp.netログインページのURLで、そのメソッドはPOSTになります。

私がasp.netのログインフォームのページの後ろのC#コードでやりたいことは、おそらくPage_Loadイベントで、ページへの要求が渡されるユーザー名とパスワードの値を含んでいるかどうかを確認することです。 もしそうなら、これらの値を読み、あたかも誰かがasp.netのページでログインボタンをクリックしたかのようにログインを処理する必要があります。 そうでない場合は、通常通りログインフォームを表示します。

私のページへのリクエストで、ユーザー名とパスワードの値が存在するかどうかを確認し、読み取るにはどうしたらよいでしょうか。

どのように解決するのですか?

Request.Form NameValueCollectionを読み込んで、それに従ってロジックを処理します。

NameValueCollection nvc = Request.Form;
string userName, password;
if (!string.IsNullOrEmpty(nvc["txtUserName"]))
{
  userName = nvc["txtUserName"];
}

if (!string.IsNullOrEmpty(nvc["txtPassword"]))
{
  password = nvc["txtPassword"];
}

//Process login
CheckLogin(userName, password);

...ここで、"txtUserName" と "txtPassword" は 名前 であり、投稿ページのコントロールの名前です。