asp.net membership常見問題總結

來源:互聯網
上載者:User

1.登陸驗證代碼

if (Membership.ValidateUser(userName.Text, password.Text))
{
if (Request.QueryString["ReturnUrl"] != null)
  {
    FormsAuthentication.RedirectFromLoginPage(userName.Text, false);
  }
  else
  {
    FormsAuthentication.SetAuthCookie(userName.Text, false);
  }
}
else
{
 Response.Write("Invalid UserID and Password");
}

2.註冊代碼(通過profile擴充)

 

  MembershipCreateStatus ms;
  MembershipUser newuser = Membership.CreateUser(TextBox1.Text, TextBox2.Text, TextBox4.Text, TextBox5.Text,TextBox6.Text,true, out ms);
 if (ms == MembershipCreateStatus.Success)
 {
ProfileCommon p = (ProfileCommon)ProfileCommon.Create(newuser.UserName, true);
 Roles.AddUserToRole(TextBox1.Text, "usermember"); 
p.telphone = TextBox7.Text.Trim();
 p.QQ = TextBox8.Text.Trim();
 p.address = TextBox9.Text.Trim();
 p.Save();
Roles.AddUserToRole(TextBox1.Text, "usergroup");      //添加新使用者到usergroup角色群組
Server.Transfer("login.aspx");
 }
else
{
string errorcode;
 switch (ms)
{
 case MembershipCreateStatus.DuplicateUserName:
 errorcode = "Username already exists.";
break;
}
}

對應的web.config中profile節點的配置如下;

<profile enabled="true" defaultProvider="profileSqlMembershipProvider">
<providers>
<add name="profileSqlMembershipProvider" 
type="System.Web.Profile.SqlProfileProvider" 
connectionStringName="webshopConnectionString"/>
</providers>
<properties>
<add name="telphone" type="String"/>
<add name="QQ" type="String"/>
<add name="address" type="String"/>
</properties>
</profile>

4.驗證使用者名稱是否存在代碼

MembershipUserCollection col = Membership.FindUsersByName(this.TextBox1.Text);
if (col.Count == 0)
Label1.Text = "恭喜您,可以註冊"; 
else
Label1.Text = "此使用者已存在";

5.判斷使用者是否登陸或者匿名代碼

if (HttpContext.Current.User.Identity.IsAuthenticated == true)

Label1.Text = "您是註冊使用者,歡迎您的註冊"; 
}
else

Label1.Text = "您是匿名使用者,請註冊"; 
}

6.擷取目前使用者名

MembershipUser u;
u = Membership.GetUse(User.Identity.Name);
Label1.Text = u.UserName; 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.