2

そのため、VS 2012 と .NET 4.5 を使用して新しい ASP.NET プロジェクトに取り組み始めました。デフォルトの開発サーバーは IIS Express です。私はフォーム認証を使用しています。これは、.NET 4.0 で実行され、VS 2010 で開発され、Cassini でデバッグされた以前のプロジェクトで動作します。私の人生では、フォーム認証が IIS Express で機能しない理由を理解することはできません。

条件は次のとおりです。

  • デフォルトの認証チケットを使用します
  • Chrome にチェックインしました。ログインすると Cookie が存在し、ログアウトすると消えてしまいました。私は初心者なので許してください。しかし、それが機能するはずですよね?
  • IIS Express で匿名認証と Windows 認証の両方を有効にしました (プロジェクト ファイルのプロパティ パネルを開いて、そこから設定しました)。

ログインして保護されたページにアクセスしようとするたびに、ログイン ページに戻ってしまいます。Page_Loadそのため、ログイン ページにブレークポイントを設定し、ログインするたびRequest.IsAuthenticatedに FALSE と評価されることを確認します。

何を与える?

4

1 に答える 1

0

それを見つけた!

FormsAuthentication.Encrypt()null を返していたことがわかりました。これはすべて、手動でチケットを作成し、UserDataフィールドを null に設定したことが原因です。UserDatanull にすることはできません。

于 2013-10-10T11:29:31.617 に答える