SqlMembershipProvider.UpdateUser(MembershipUser) Yöntem
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
SQL Server üyelik veritabanındaki bir kullanıcı hakkındaki bilgileri güncelleştirir.
public:
override void UpdateUser(System::Web::Security::MembershipUser ^ user);
public override void UpdateUser (System.Web.Security.MembershipUser user);
override this.UpdateUser : System.Web.Security.MembershipUser -> unit
Public Overrides Sub UpdateUser (user As MembershipUser)
Parametreler
- user
- MembershipUser
MembershipUser Güncelleştirilecek kullanıcıyı ve kullanıcı için güncelleştirilmiş bilgileri temsil eden bir nesne.
Özel durumlar
user
, null
değeridir.
-veya-
UserName özelliğinin user
özelliğidirnull
.
-veya-
Email özelliği user
ve null
RequiresUniqueEmail olarak ayarlanırtrue
.
UserName özelliği user
boş bir dizedir (""), virgül içerir veya 256 karakterden uzundur.
-veya-
özelliği Emailuser
256 karakterden uzundur.
-veya-
Email özelliği user
boş bir dizedir ve RequiresUniqueEmail olarak true
ayarlanır.
UserName özelliği user
veritabanında bulunamadı.
-veya-
Email özelliği user
veritabanındaki mevcut bir e-posta adresine eşitti ve RequiresUniqueEmail true olarak ayarlandı.
-veya-
Kullanıcı güncelleştirmesi başarısız oldu.
Örnekler
Aşağıdaki kod örneği, bir kullanıcının e-posta adresini güncelleştirir.
Not
Bu örnek, Membership Web.config dosyasında belirtilen öğesini defaultProvider
çağırmak SqlMembershipProvider için sınıfını kullanır. türü SqlMembershipProviderolarak varsayılan sağlayıcıya erişmeniz gerekiyorsa sınıfının özelliğini Membership yayınlayabilirsinizProvider. Belirli bir sağlayıcı türü olarak yapılandırılan diğer sağlayıcılara erişmek için, bu sağlayıcılara sınıfının özelliğiyle ProvidersMembership yapılandırılmış adlarıyla erişebilir ve bunları belirli bir sağlayıcı türü olarak yayınlayabilirsiniz.
<%@ Page Language="C#" %>
<%@ Import Namespace="System.Web.Security" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
MembershipUser u;
public void Page_Load(object sender, EventArgs args)
{
u = Membership.GetUser(User.Identity.Name);
if (!IsPostBack)
{
EmailTextBox.Text = u.Email;
}
}
public void UpdateEmailButton_OnClick(object sender, EventArgs args)
{
try
{
u.Email = EmailTextBox.Text;
Membership.UpdateUser(u);
Msg.Text = "User email updated.";
}
catch (System.Configuration.Provider.ProviderException e)
{
Msg.Text = e.Message;
}
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>Sample: Update User E-Mail</title>
</head>
<body>
<form id="form1" runat="server">
<h3>Update E-Mail Address for <%=User.Identity.Name%></h3>
<asp:Label id="Msg" ForeColor="maroon" runat="server" /><br />
<table cellpadding="3" border="0">
<tr>
<td>Email Address:</td>
<td><asp:TextBox id="EmailTextBox" MaxLength="128" Columns="30" runat="server" /></td>
<td><asp:RequiredFieldValidator id="EmailRequiredValidator" runat="server"
ControlToValidate="EmailTextBox" ForeColor="red"
Display="Static" ErrorMessage="Required" /></td>
</tr>
<tr>
<td></td>
<td><asp:Button id="UpdateEmailButton"
Text="Update Email"
OnClick="UpdateEmailButton_OnClick"
runat="server" /></td>
</tr>
</table>
</form>
</body>
</html>
<%@ Page Language="vb" %>
<%@ Import Namespace="System.Web.Security" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
Dim u As MembershipUser
Public Sub Page_Load(sender As Object, args As EventArgs)
u = Membership.GetUser(User.Identity.Name)
If Not IsPostBack Then EmailTextBox.Text = u.Email
End Sub
Public Sub UpdateEmailButton_OnClick(sender As Object, args As EventArgs)
Try
u.Email = EmailTextBox.Text
Membership.UpdateUser(u)
Msg.Text = "User email updated."
Catch e As System.Configuration.Provider.ProviderException
Msg.Text = e.Message
End Try
End Sub
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>Sample: Update User E-Mail</title>
</head>
<body>
<form id="form1" runat="server">
<h3>Update E-Mail Address for <%=User.Identity.Name%></h3>
<asp:Label id="Msg" ForeColor="maroon" runat="server" /><br />
<table cellpadding="3" border="0">
<tr>
<td>Email Address:</td>
<td><asp:TextBox id="EmailTextBox" MaxLength="128" Columns="30" runat="server" /></td>
<td><asp:RequiredFieldValidator id="EmailRequiredValidator" runat="server"
ControlToValidate="EmailTextBox" ForeColor="red"
Display="Static" ErrorMessage="Required" /></td>
</tr>
<tr>
<td></td>
<td><asp:Button id="UpdateEmailButton"
Text="Update Email"
OnClick="UpdateEmailButton_OnClick"
runat="server" /></td>
</tr>
</table>
</form>
</body>
</html>
Açıklamalar
Bu yöntem, ASP.NET uygulamasının Membership yapılandırma dosyasında (Web.config) belirtilen SQL Server veritabanındaki bir kullanıcının kullanıcı bilgilerini güncelleştirmek için sınıfı tarafından çağrılır. Belirtilen Emailüyelik kullanıcısı için , CommentIsApproved, , LastLoginDateve LastActivityDate özellik değerleri güncelleştirilir.
Özelliğin UserName uzunluk üst sınırı 256 karakterdir. Özelliğin Email uzunluk üst sınırı 256 karakterdir.
Üyelik kullanıcısının parolası yöntemi kullanılarak UpdateUser güncelleştirilemez. Üyelik kullanıcısının parolasını güncelleştirmek için sınıfının yöntemini MembershipUser kullanınChangePassword.