2011-07-20 5 views
0

私はログイン/サインアップモジュール(FYIロール/メンバーシップは単純なログインフォーム)に取り組んでおり、データフローは登録とログインの両方のSQLサーバーからのものです。現在正常に動作しています。 私のコードでサインイン/サインアウト機能を使用しようとしています。私はすでにログインフォームを作成しており、ユーザーはログインすることができ、ログインが成功すると、ユーザーはdefault_page.aspxにリダイレクトされます。はサインイン/サインアウトに関して、asp.netで認証されています

<td width="122" align="right"><asp:LinkButton ID="LinkButton1" runat="server" 
      onclick="LinkButton1_Click">Sign Out</asp:LinkButton></td> 

CSのページ:uは私が唯一のLinkBut​​tonコントロールを配置し、ユーザーが得たリンクボタンの上のユーザーをクリックした場合している見ることができるコードの上から

protected void LinkButton1_Click(object sender, EventArgs e) 
{ 
    //After click Log out we need to delete all session values 


    Session.RemoveAll(); 
    Response.Redirect("userlogin.aspx"); 
} 

この点で最大私のR & Dコードはようですログアウトしてloginpage(ここではuserlogin.aspx)にリダイレクトされます。しかし、今私が変更しようとしている場合(aspxと.csを参照してください)サインイン| signoutとして私はエラーとして表示されます:'System.Security.Principal.IPrincipal'には 'IsAuthenticated'と拡張メソッドの定義が含まれていません ' '見つかりませんでしたSystem.Security.Principal.IPrincipal」タイプの最初の引数を受け入れる' にisAuthenticated(あなたがusingディレクティブまたはアセンブリ参照が不足している?)

aspxページ:

<td width="122" align="right"><asp:LinkButton ID="LinkButtonSignInOut" runat="server" 
      onclick="LinkButton1_Click">""</asp:LinkButton></td> 

は.csページ:

protected void LinkButton1_Click(object sender, EventArgs e) 
{ 
    //After click Log out we need to delete all session values 
    if (User.IsAuthenticated)**//error is here** 
     LinkButtonSignInOut.Text = "Sign Out"; 
    else 
     LabelSignInOut.Text = "Sign In"; 

    Session.RemoveAll(); 
    Response.Redirect("userlogin.aspx"); 
} 

何か提案がありますか?

ありがとうございました!

答えて

0

私がコメントに

protected void LinkButton1_Click(object sender, EventArgs e) 
{ 
    if (User.IsAuthenticated) **//error is here** 
    if(User.Identity.IsAuthenticated) // this is correct code 
     LinkButtonSignInOut.Text = "Sign Out"; 
    else 
     LabelSignInOut.Text = "Sign In"; 

    Session.RemoveAll(); // 
    Session.Abandon(); // Better to use this 
    Response.Redirect("userlogin.aspx"); 
    // You are display assigning text in label and immediate after you are redirecting it to another page ?? 
} 
+0

@thanksを書いている...しかし、現在はあなたのコードをチェックするために窓を持っていない...ええ、あなたが間違ったリダイレクトについて正しいです...しかし、現在、私は、以下のコードを確認してくださいこれに取り組んでいます。 – Alok

関連する問題