2012-03-08 11 views
-1

にログインするユーザのユーザ名の取得:ここ私は次のスクリプトを実行しようとしています

LoginName1System.Web.UI.WebControls.LoginNameです。 LoginName1はウェブページにユーザー名を表示します。 しかし、それは動作していないようです。どこが間違っていますか?ここで

は完全なコードである[最新]:

<%@ Page Title="Home Page" Language="C#" MasterPageFile="~/Site1.master" AutoEventWireup="true" 
    CodeBehind="~/Default.aspx.cs" Inherits="memberlogin.Default" %> 


<asp:Content ID="HeaderContent" runat="server" ContentPlaceHolderID="HeadContent"> 
<script runat="server" > 
    public void redirect() 
    {// I have removed previous content - it JUST WONT REDIRECT THE PAGE 
     //String loginame = System.Web.HttpContext.Current.User.Identity.Name; 
     //if (loginame == "usertest") 
     Response.Redirect("Default.aspx"); 
     } 
</script> 
</asp:Content> 
<asp:Content ID="BodyContent" runat="server" ContentPlaceHolderID="MainContent" > 
    <h1> 
     <span class="input">Welcome to the members-only page.</span> 
    </h1> 
    <h2> 
     Start Client Side Application. 
    </h2> 
         <asp:LoginView ID="LoginView1" runat="server"> 
       <AnonymousTemplate> 
        <span class="input">&nbsp;You are not logged in. Click the Login link to sign in</span> 
       </AnonymousTemplate> 
       <LoggedInTemplate> 
        <span class="input">You are logged in. Welcome, </span> 
       </LoggedInTemplate> 
      </asp:LoginView> 
      <asp:LoginName ID="LoginName1" runat="server" /> 
      &nbsp;&nbsp; 
      <table class="style1"> 
       <tr> 
        <td align="center" valign="middle"> 
      <br /> 
         <br /> 
         <br /> 
         <br /> 
         <br /> 
         <br /> 
         <br /> 
         <br /> 
         Click on This Image Link To Start The Application<br /> 
         <br /> 
         <asp:ImageButton OnClick="click" runat="server" ID="ImageButton1" Height="100px" 
          ImageUrl="~/Images/loader.jpg" PostBackUrl="~/Loading.aspx" /> 
         <br /> 
         <br /> 
         <br /> 
         <br /> 
         <br /> 
         <br /> 
         <br /> 
         <br /> 
         <br /> 
         <br /> 
         <br /> 
        </td> 
       </tr> 
      </table> 
      <asp:LoginStatus ID="LoginStatus1" runat="server" 
       LogoutAction="Redirect" BackColor="White" 
       Font-Underline="True" LogoutPageUrl="~/Default.aspx" /> 

</asp:Content> 
+2

どうしたらうまくいかないのですか? –

+0

「LoginName1」にカーソルを移動すると、「このメンバーは複数回定義されています。」 –

+0

どこでリダイレクトを呼びますか? – RQDQ

答えて

4

あなたはHttpContext.Current.User.Identity.Nameからユーザ名を取得しようとしたことがありますか?

コンテキストから判断すると、LoginName1は、ViewStateが関連付けられていないラベルまたは別の.NETコントロールであると推測しています。もしそうなら、上記のコードはうまくいくはずです。

+0

申し訳ありませんが、「LoginName1」は 'asp:LoginName'、つまり' System.Web .UI.WebControls.LoginName1' ... –

0

System.Web.UI.Page.User.Identity.Nameはクラスではありません。 System.Web.UI.Pageはクラスであり、UserはタイプIPrincipalのプロパティであり、Nameタイプを含むIIdentityタイプのプロパティIdentityを含みます。

System.Web.UI.Page.User.Identity.Nameの値を含むLoginName1stringですか?または、その値を表示するコントロールですか?前者の場合、コードは機能するはずですが、後でコントロールの値を取得するには、.Textまたは.Valueを使用する必要があります。

+0

私の編集を参照してください –

+0

LoginName1.ToString()を試しましたか? –

+0

「このメンバーは複数回定義されています」 –

関連する問題