System.Web.HttpException: невозможно проверить данные - после публикации сайта - PullRequest
1 голос
/ 09 февраля 2011

Я написал следующий код для входа в систему:

 Session["IsLogin"] = false;
        System.Configuration.Configuration config = System.Web.Configuration.WebConfigurationManager.OpenWebConfiguration("~");
        if (txtPassword.Text.Trim() == string.Empty)
        {
            // Display Error
        }
        else
        {
            string Pwd = config.AppSettings.Settings["PWD"].Value.ToString();
            FormsAuthenticationTicket formAuthTk = FormsAuthentication.Decrypt(Pwd);
            string strDcryptedPwd = formAuthTk.Name.Trim().ToString();
            if (txtPassword.Text.Trim() == strDcryptedPwd)
            {
                Session["IsLogin"] = true;
                Response.Redirect("AnyPage.aspx");
            }
            else
            {
                // Error, Wrong password
            }
        }

, который работает нормально при работе через Visual Studio.Но когда я его опубликовал, он показывает следующую ошибку:

System.Web.HttpException: невозможно проверить данные

ПРИМЕЧАНИЕ:

  1. Я публикую приложение на том же сервере, на котором я разрабатываю сайт.

  2. Я пробовал EnableViewStateMAC = false на уровне страницы.[Страница входа]

В чем причина этой ошибки?Почему он появляется только тогда, когда я опубликовал сайт?

Ответы [ 3 ]

1 голос
/ 10 февраля 2011

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

0 голосов
/ 09 февраля 2011
0 голосов
/ 09 февраля 2011

вам не нужно объявлять конфигурацию так, как вы это сделали, просто используйте Configuration.AppSettings ["PWD"]. ToString () ...

...