Как я могу программным образом войти на веб-сайт ASP.NET, который использует проверку подлинности с помощью форм?
==================================================================================================================

 Я пытаюсь автоматизировать тестирование веб-сайта ASP.NET (не MVC), который использует проверку подлинности с помощью форм.

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

  Я пробовал отправлять на страницу LogOn (поставляя подходящее имя пользователя и пароль), но это не удается - и я думаю, что это не удается, потому что веб-сайт использует проверку событий ASP.NET. (Если я использую Fiddler для просмотра того, что отправлено в браузер и из него, есть элемент скрытой формы \_\_EVENTVALIDATION).

  Я предполагаю, что мне нужно будет однажды посетить страницу входа в систему, получить значение \_\_EVENTVALIDATION и включить, когда я отправляю имя пользователя и пароль на страницу LogOn?

  Это все, что мне нужно сделать, или подделывает веб-сайт, основанный на проверке подлинности на основе форм, без запуска?

 

 Ну, в случае, если это поможет кому-то еще, я смог получить эту работу, выпустив запрос GET на страницу LogOn, извлекая значения `__VIEWSTATEENCRYPTED` скрытой формы `__EVENTVALIDATION`, `__VIEWSTATE` и `__VIEWSTATEENCRYPTED` из возвращаемого HTML, а затем POSTing эти значения обратно на страницу LogOn вместе с остальными моими значениями формы (имя пользователя и пароль).

 .i1a { width: 336px; height: 280px; }
 @media(min-width: 768px) { .i1a { width: 728px; height: 90px; } }
 @media(min-width: 992px) { .i1a { width: 468px; height: 60px; } }
 @media(min-width: 1083px) { .i1a { width: 728px; height: 90px; } }

 (adsbygoogle = window.adsbygoogle || []).push({});

 Я использую один экземпляр `HttpClient` всем протяжении, поэтому cookie сеанса ASP.NET сохраняется между запросами.