SqlMembershipProvider.DeleteUser(String, Boolean) 方法
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
從 SQL Server 成員資格資料庫中移除使用者的成員資格資訊。
public:
override bool DeleteUser(System::String ^ username, bool deleteAllRelatedData);
public override bool DeleteUser (string username, bool deleteAllRelatedData);
override this.DeleteUser : string * bool -> bool
Public Overrides Function DeleteUser (username As String, deleteAllRelatedData As Boolean) As Boolean
參數
- username
- String
要刪除的使用者名稱。
- deleteAllRelatedData
- Boolean
true
表示要從資料庫中刪除與使用者相關的資料,false
表示要保留資料庫中與使用者相關的資料。
傳回
如果使用者已刪除,則為 true
,否則為 false
。 如果資料庫中沒有該使用者,也會傳回 false
值。
例外狀況
username
為空字串 ("")、包含逗號或超過 256 個字元。
username
為 null
。
範例
下列程式代碼範例會刪除目前登入的使用者。
注意
這個範例會使用 SqlMembershipProvider 呼叫 SqlMembershipProvider 指定做為 defaultProvider
Web.config 檔案中的 。 如果您需要存取預設提供者做為 類型 SqlMembershipProvider,您可以轉換 Provider 類別的 Membership 屬性。 若要以特定提供者類型存取其他已設定的提供者,您可以使用 類別 Providers 的 Membership 屬性來存取這些提供者,並將其轉換成特定提供者類型。
<%@ 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">
public void YesButton_OnClick(object sender, EventArgs args)
{
Membership.DeleteUser(User.Identity.Name, DeleteRelatedData.Checked);
FormsAuthentication.SignOut();
FormsAuthentication.RedirectToLoginPage();
}
public void CancelButton_OnClick(object sender, EventArgs args)
{
Response.Redirect("default.aspx");
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>Sample: Delete User</title>
</head>
<body>
<form id="form1" runat="server">
<h3>Delete User</h3>
<asp:Label id="Msg" ForeColor="maroon" runat="server" /><br />
<span style="color:red">Are you sure you want to delete the userid <b><%=User.Identity.Name%></b>?</span><br />
Delete related profile and roles data: <asp:CheckBox id="DeleteRelatedData"
checked="True" runat="Server" /><br />
<asp:Button id="YesButton" Text="Yes" OnClick="YesButton_OnClick" runat="server" />
<asp:Button id="CancelButton" Text="Cancel" OnClick="CancelButton_OnClick" runat="server" />
</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">
Public Sub YesButton_OnClick(ByVal sender As Object, ByVal args As EventArgs)
Membership.DeleteUser(User.Identity.Name, DeleteRelatedData.Checked)
FormsAuthentication.SignOut()
FormsAuthentication.RedirectToLoginPage()
End Sub
Public Sub CancelButton_OnClick(ByVal sender As Object, ByVal args As EventArgs)
Response.Redirect("default.aspx")
End Sub
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>Sample: Delete User</title>
</head>
<body>
<form id="form1" runat="server">
<h3>
Delete User</h3>
<asp:Label ID="Msg" ForeColor="maroon" runat="server" /><br />
<p style="color:red">Are you sure you want to delete the userid <b><%=User.Identity.Name%></b>?</p>
<br />
Delete related profile and roles data:
<asp:CheckBox ID="DeleteRelatedData" Checked="True" runat="Server" /><br />
<asp:Button ID="YesButton" Text="Yes" OnClick="YesButton_OnClick" runat="server" />
<asp:Button ID="CancelButton" Text="Cancel" OnClick="CancelButton_OnClick" runat="server" />
</form>
</body>
</html>
備註
類別會 Membership 呼叫這個方法,以從 ASP.NET 應用程式組態檔中指定的 SQL Server 資料庫中移除使用者。
已刪除的使用者只會從設定 ApplicationName的 中刪除。
如果 deleteAllRelatedData
設定為 true
,則也會針對所設定 ApplicationName的 刪除儲存在 資料庫中的Roles所有用戶Profile數據, 或WebPart個人化功能。
如果成員資格使用者不存在於資料庫中,且 deleteAllRelatedData
為 true
,則針對、 Profile或 WebPart 個人化功能所儲存Roles的相關數據和使用者資訊,仍會針對屬性中指定的ApplicationName應用程式刪除。 因此, DeleteUser 方法可用於快速刪除與使用者相關的資訊,即使 SqlMembershipProvider 物件未用於儲存已驗證的使用者資訊也一樣。
會修剪 username
參數值中的前置空格和後端空格。