ProfileManager.DeleteProfile メソッド
アセンブリ: System.Web (system.web.dll 内)

Dim username As String Dim returnValue As Boolean returnValue = ProfileManager.DeleteProfile(username)
戻り値
ユーザー プロファイルが見つかって削除された場合は true。それ以外の場合は false。


DeleteProfile メソッドは、指定した ApplicationName のデータ ソースから、指定した username のユーザー プロファイルに関するすべてのプロファイル情報とプロパティ値を削除します。
DeleteProfile メソッドは、既定のプロファイル プロバイダの DeleteProfiles メソッドを呼び出して、削除操作を実行します。既定のプロファイル プロバイダは、profile 構成要素の defaultProvider 属性を使用して指定します。ユーザー プロファイルに、既定のプロバイダ以外のプロファイル プロバイダによって管理されるプロパティが存在する場合、それらのプロパティは削除されません。既定プロバイダ以外のプロファイル プロバイダによって管理されるプロファイルのプロパティを削除するには、Providers プロパティで目的のプロファイルへの参照を取得し、プロバイダの DeleteProfiles メソッドを直接呼び出します。

アクティブでないプロファイルを管理する ASP.NET ページを表示するコードの例を次に示します。削除対象として単一のプロファイルが選択されると、DeleteProfile メソッドが呼び出されます。プロファイルがアクティブでないかどうかは、GetAllInactiveProfiles メソッドに渡される userInactiveSinceDate パラメータに指定された日付に基づいて判断されます。
<%@ Page Language="VB" %> <%@ Import Namespace="System.Web.Profile" %> <script runat="server"> Dim authOption As ProfileAuthenticationOption Dim inactiveDays As Integer = 120 Dim deletedProfiles As Integer = 0 Public Sub Page_Load() DeletedMessage.Text = "" authOption = GetAuthenticationOption() If Not IsPostBack Then InactiveDaysTextBox.Text = inactiveDays.ToString() GetProfiles() Else inactiveDays = Convert.ToInt32(InactiveDaysTextBox.Text) End If End Sub Public Sub ProfileGrid_Delete(sender As Object, args As GridViewCommandEventArgs) ' Retrieve user name selected. Dim index As Integer = Convert.ToInt32(args.CommandArgument) Dim username As String = ProfileGrid.Rows(index).Cells(0).Text If ProfileManager.DeleteProfile(username) Then _ DeletedMessage.Text = "Profile deleted." ' Refresh profile list. GetProfiles() End Sub Private Sub GetProfiles() ProfileGrid.DataSource = ProfileManager.GetAllInactiveProfiles(authOption, _ DateTime.Now.Subtract(new TimeSpan(inactiveDays, 0, 0, 0))) ProfileGrid.DataBind() End Sub Public Sub NextButton_OnClick(sender As Object, args As EventArgs) GetProfiles() End Sub Public Sub PreviousButton_OnClick(sender As Object, args As EventArgs) GetProfiles() End Sub Public Sub ModifyInactiveDaysButton_OnClick(sender As Object, args As EventArgs) GetProfiles() End Sub Public Sub AuthenticationOptionListBox_OnSelectedIndexChanged(sender As Object, args As EventArgs) authOption = GetAuthenticationOption() GetProfiles() End Sub Private Function GetAuthenticationOption() As ProfileAuthenticationOption If Not AuthenticationOptionListBox.SelectedItem Is Nothing Then Select Case AuthenticationOptionListBox.SelectedItem.Value Case "Anonymous" Return ProfileAuthenticationOption.Anonymous Case "Authenticated" Return ProfileAuthenticationOption.Authenticated Case Else Return ProfileAuthenticationOption.All End Select End If Return ProfileAuthenticationOption.All End Function Public Sub DeleteAllInactiveButton_OnClick(sender As Object, args As EventArgs) deletedProfiles = ProfileManager.DeleteInactiveProfiles(authOption, _ DateTime.Now.Subtract(new TimeSpan(inactiveDays, 0, 0 ,0))) DeletedMessage.Text = deletedProfiles.ToString() & " profiles deleted." GetProfiles() End Sub </script> <html> <head> <title>Sample: Find Profiles</title> </head> <body> <form runat="server"> <h3>Profile List</h3> <table border=0 cellpadding=3 cellspacing=3> <tr> <td valign="top">Authentication Option</td> <td valign="top"><asp:ListBox id="AuthenticationOptionListBox" rows="3" runat="Server" AutoPostBack="true" OnSelectedIndexChanged="AuthenticationOptionListBox_OnSelectedIndexChanged"> <asp:ListItem value="All" selected="True">All</asp:ListItem> <asp:ListItem value="Authenticated">Authenticated</asp:ListItem> <asp:ListItem value="Anonymous">Anonymous</asp:ListItem> </asp:ListBox> </td> </tr> <tr> <td valign="top" width="160"> Number of Days for Profile to be considered "inactive"</td> <td valign="top" width="200"> <asp:TextBox id="InactiveDaysTextBox" runat="Server" MaxLength="3" Columns="3" /> <asp:Button id="ModifyInactiveDaysButton" runat="server" Text="Refresh Results" OnClick="ModifyInactiveDaysButton_OnClick" /><BR> <asp:Button id="DeleteAllInactiveButton" runat="Server" Text="Delete All Inactive Profiles" OnClick="DeleteAllInactiveButton_OnClick" /> </td> <td valign="top"> <asp:RequiredFieldValidator id="InactiveDaysRequiredValidator" runat="server" ControlToValidate="InactiveDaysTextBox" ForeColor="red" Display="Static" ErrorMessage="Required" /> <asp:RegularExpressionValidator id="InactiveDaysValidator" runat="server" ControlToValidate="InactiveDaysTextBox" ForeColor="red" Display="Static" ValidationExpression="(0-9)*" ErrorMessage="Inactive Days must be a whole number less than 1000 (e.g. 30, 120)" /> </td> </tr> <tr> <td><asp:Label id="DeletedMessage" runat="server" /></td> </tr> </table> <asp:GridView id="ProfileGrid" runat="server" AutoGenerateColumns="false" OnRowCommand="ProfileGrid_Delete" CellPadding="2" CellSpacing="1" Gridlines="None"> <HeaderStyle BackColor="darkblue" ForeColor="white" /> <Columns> <asp:BoundField runat="server" HeaderText="User Name" DataField="Username" /> <asp:BoundField runat="server" HeaderText="Is Anonymous" DataField="IsAnonymous" /> <asp:BoundField runat="server" HeaderText="Last Updated" DataField="LastUpdatedDate" /> <asp:BoundField runat="server" HeaderText="Last Activity" DataField="LastActivityDate" /> <asp:ButtonField runat="server" HeaderText="Action" Text="Delete" ButtonType="Link" /> </Columns> </asp:GridView> </form> </body> </html>
<%@ Page Language="C#" %> <%@ Import Namespace="System.Web.Profile" %> <script runat="server"> ProfileAuthenticationOption authOption; int inactiveDays = 120; int deletedProfiles = 0; public void Page_Load() { DeletedMessage.Text = ""; authOption = GetAuthenticationOption(); if (!IsPostBack) { InactiveDaysTextBox.Text = inactiveDays.ToString(); GetProfiles(); } else { inactiveDays = Convert.ToInt32(InactiveDaysTextBox.Text); } } public void ProfileGrid_Delete(object sender, GridViewCommandEventArgs args) { // Retrieve user name selected. int index = Convert.ToInt32(args.CommandArgument); string username = ProfileGrid.Rows[index].Cells[0].Text; if (ProfileManager.DeleteProfile(username)) DeletedMessage.Text = "Profile deleted."; // Refresh profile list. GetProfiles(); } private void GetProfiles() { ProfileGrid.DataSource = ProfileManager.GetAllInactiveProfiles(authOption, DateTime.Now.Subtract(new TimeSpan(inactiveDays, 0, 0, 0))); ProfileGrid.DataBind(); } public void NextButton_OnClick(object sender, EventArgs args) { GetProfiles(); } public void PreviousButton_OnClick(object sender, EventArgs args) { GetProfiles(); } public void ModifyInactiveDaysButton_OnClick(object sender, EventArgs args) { GetProfiles(); } public void AuthenticationOptionListBox_OnSelectedIndexChanged(object sender, EventArgs args) { authOption = GetAuthenticationOption(); GetProfiles(); } private ProfileAuthenticationOption GetAuthenticationOption() { if (AuthenticationOptionListBox.SelectedItem != null) { switch (AuthenticationOptionListBox.SelectedItem.Value) { case "Anonymous": return ProfileAuthenticationOption.Anonymous; break; case "Authenticated": return ProfileAuthenticationOption.Authenticated; break; default: return ProfileAuthenticationOption.All; break; } } return ProfileAuthenticationOption.All; } public void DeleteAllInactiveButton_OnClick(object sender, EventArgs args) { deletedProfiles = ProfileManager.DeleteInactiveProfiles(authOption, DateTime.Now.Subtract(new TimeSpan(inactiveDays, 0, 0 ,0))); DeletedMessage.Text = deletedProfiles.ToString() + " profiles deleted."; GetProfiles(); } </script> <html> <head> <title>Sample: Find Profiles</title> </head> <body> <form runat="server"> <h3>Profile List</h3> <table border=0 cellpadding=3 cellspacing=3> <tr> <td valign="top">Authentication Option</td> <td valign="top"><asp:ListBox id="AuthenticationOptionListBox" rows="3" runat="Server" AutoPostBack="true" OnSelectedIndexChanged="AuthenticationOptionListBox_OnSelectedIndexChanged"> <asp:ListItem value="All" selected="True">All</asp:ListItem> <asp:ListItem value="Authenticated">Authenticated</asp:ListItem> <asp:ListItem value="Anonymous">Anonymous</asp:ListItem> </asp:ListBox> </td> </tr> <tr> <td valign="top" width="160"> Number of Days for Profile to be considered "inactive"</td> <td valign="top" width="200"> <asp:TextBox id="InactiveDaysTextBox" runat="Server" MaxLength="3" Columns="3" /> <asp:Button id="ModifyInactiveDaysButton" runat="server" Text="Refresh Results" OnClick="ModifyInactiveDaysButton_OnClick" /><BR> <asp:Button id="DeleteAllInactiveButton" runat="Server" Text="Delete All Inactive Profiles" OnClick="DeleteAllInactiveButton_OnClick" /> </td> <td valign="top"> <asp:RequiredFieldValidator id="InactiveDaysRequiredValidator" runat="server" ControlToValidate="InactiveDaysTextBox" ForeColor="red" Display="Static" ErrorMessage="Required" /> <asp:RegularExpressionValidator id="InactiveDaysValidator" runat="server" ControlToValidate="InactiveDaysTextBox" ForeColor="red" Display="Static" ValidationExpression="[0-9]*" ErrorMessage="Inactive Days must be a whole number less than 1000 (e.g. 30, 120)" /> </td> </tr> <tr> <td><asp:Label id="DeletedMessage" runat="server" /></td> </tr> </table> <asp:GridView id="ProfileGrid" runat="server" AutoGenerateColumns="false" OnRowCommand="ProfileGrid_Delete" CellPadding="2" CellSpacing="1" Gridlines="None"> <HeaderStyle BackColor="darkblue" ForeColor="white" /> <Columns> <asp:BoundField runat="server" HeaderText="User Name" DataField="Username" /> <asp:BoundField runat="server" HeaderText="Is Anonymous" DataField="IsAnonymous" /> <asp:BoundField runat="server" HeaderText="Last Updated" DataField="LastUpdatedDate" /> <asp:BoundField runat="server" HeaderText="Last Activity" DataField="LastActivityDate" /> <asp:ButtonField runat="server" HeaderText="Action" Text="Delete" ButtonType="Link" /> </Columns> </asp:GridView> </form> </body> </html>

Windows 98, Windows 2000 SP4, Windows Millennium Edition, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。


Weblioに収録されているすべての辞書からProfileManager.DeleteProfile メソッドを検索する場合は、下記のリンクをクリックしてください。

- ProfileManager.DeleteProfile メソッドのページへのリンク