Прочитать данные публикации, представленные в форму ASP.Net - PullRequest
107 голосов
/ 19 февраля 2009

У меня есть рабочая форма входа в приложение asp.net. Стандартный материал с текстовым полем для имени пользователя и пароля и кнопкой для обработки входа в систему. Работает нормально.

У меня есть новое требование, позволяющее пользователю вводить имя пользователя и пароль с отдельной простой HTML-страницы, которая не является частью моего приложения asp.net. Я планирую добиться этого, используя стандартную html-форму, ввод, кнопку отправки и т. Д. Действие формы будет URL-адресом моей страницы входа в asp.net, а его метод будет POST.

То, что я хочу сделать в коде C # за страницей формы входа в asp.net, предположительно в событии Page_Load, - это проверить, содержит ли запрос для страницы имя пользователя и пароль, которые передаются. Если это так затем мне нужно прочитать эти значения и обработать логин, как если бы кто-то нажал кнопку логина на странице asp.net. Если нет, то я буду отображать форму входа как обычно.

Как проверить наличие и прочитать значения имени пользователя и пароля в запросе на мою страницу.

Ответы [ 3 ]

145 голосов
/ 19 февраля 2009

Прочитайте 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» - это Имена элементов управления на странице публикации.

13 голосов
/ 19 февраля 2009
if (!string.IsNullOrEmpty(Request.Form["username"])) { ... }

username - это имя входа на странице отправки. Пароль можно получить таким же образом. Если он не нулевой или пустой, он существует, а затем войдите в систему пользователя (я не помню точных шагов для членства в ASP.NET, если предположим, что вы это используете).

3 голосов
/ 08 июня 2016
NameValueCollection nvclc = Request.Form;
string   uName= nvclc ["txtUserName"];
string   pswod= nvclc ["txtPassword"];
//try login
CheckLogin(uName, pswod);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...