다음을 통해 공유


ProfileManager.GetAllProfiles 메서드

정의

데이터 소스에서 프로필에 대한 사용자 프로필 데이터를 검색합니다.

오버로드

GetAllProfiles(ProfileAuthenticationOption)

데이터 소스에서 프로필에 대한 사용자 프로필 데이터를 검색합니다.

GetAllProfiles(ProfileAuthenticationOption, Int32, Int32, Int32)

사용자 프로필 데이터의 페이지를 검색합니다.

GetAllProfiles(ProfileAuthenticationOption)

데이터 소스에서 프로필에 대한 사용자 프로필 데이터를 검색합니다.

public:
 static System::Web::Profile::ProfileInfoCollection ^ GetAllProfiles(System::Web::Profile::ProfileAuthenticationOption authenticationOption);
public static System.Web.Profile.ProfileInfoCollection GetAllProfiles (System.Web.Profile.ProfileAuthenticationOption authenticationOption);
static member GetAllProfiles : System.Web.Profile.ProfileAuthenticationOption -> System.Web.Profile.ProfileInfoCollection
Public Shared Function GetAllProfiles (authenticationOption As ProfileAuthenticationOption) As ProfileInfoCollection

매개 변수

authenticationOption
ProfileAuthenticationOption

ProfileAuthenticationOption 열거형 값 중 하나로, 반환되는 프로필이 익명인지, 인증되었는지 또는 두 형식 모두인지를 지정합니다.

반환

데이터 소스에 있는 모든 프로필에 대한 사용자 프로필 정보가 포함된 ProfileInfoCollection입니다.

예제

다음 코드 예제에서는 구성된 applicationName의 모든 프로필에 대한 프로필 정보를 표시합니다.

<%@ Page Language="C#" %>
<%@ Import Namespace="System.Web.Profile" %>
<!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 Page_Load()
{
  TotalLabel.Text = ProfileManager.GetNumberOfProfiles(ProfileAuthenticationOption.All).ToString();
  GetProfiles();
}

private void GetProfiles()
{
  ProfileGrid.DataSource = ProfileManager.GetAllProfiles(ProfileAuthenticationOption.All);
  ProfileGrid.DataBind();
}

</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>Sample: Find Profiles</title>
</head>
<body>

<form id="form1" runat="server">
  <h3>Profile List</h3>

  <asp:Label id="TotalLabel" runat="server" text="0" /> Profiles found.<br />

  <asp:GridView id="ProfileGrid" runat="server"
                CellPadding="2" CellSpacing="1" Gridlines="Both">
    <HeaderStyle BackColor="darkblue" ForeColor="white" />
  </asp:GridView>

</form>

</body>
</html>
<%@ Page Language="VB" %>
<%@ Import Namespace="System.Web.Profile" %>
<!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 Page_Load()
  TotalLabel.Text = ProfileManager.GetNumberOfProfiles(ProfileAuthenticationOption.All).ToString()
  GetProfiles()
End Sub

Private Sub GetProfiles()
  ProfileGrid.DataSource = ProfileManager.GetAllProfiles(ProfileAuthenticationOption.All)
  ProfileGrid.DataBind()
End Sub

</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>Sample: Find Profiles</title>
</head>
<body>

<form id="form1" runat="server">
  <h3>Profile List</h3>

  <asp:Label id="TotalLabel" runat="server" text="0" /> Profiles found.<br />

  <asp:GridView id="ProfileGrid" runat="server"
                CellPadding="2" CellSpacing="1" Gridlines="Both">
    <HeaderStyle BackColor="darkblue" ForeColor="white" />
  </asp:GridView>

</form>

</body>
</html>

설명

GetAllProfiles 메서드는 지정 된 애플리케이션에 대 한 데이터 소스에서 프로필 정보를 검색할 데는 applicationName 구성 파일에서 특성입니다. 사용 된 authenticationOption 익명 프로필에 있는지 여부를 지정 하려면 매개 변수는 프로필 또는를 검색할 수 있는 모든 프로필에만 인증 합니다.

추가 pageIndexpageSize 매개 변수를 사용하는 메서드에 대한 오버로드를 사용하여 사용자 프로필에 GetAllProfiles 대한 개체 페이지를 ProfileInfo 검색할 수 있습니다.

메서드는 GetAllProfiles 기본 프로필 공급자의 메서드를 호출 GetAllProfiles 합니다. 기본 프로필 공급자는 프로필 구성 요소의 특성을 사용하여 defaultProvider 지정됩니다. 사용자 프로필에 기본 공급자가 아닌 프로필 공급자가 관리하는 속성이 포함된 경우 다른 프로필 공급자의 데이터 원본은 검색되지 않습니다. 기본 공급자가 아닌 프로필 공급자가 관리하는 프로필을 찾으려면 속성을 사용하여 Providers 프로필 공급자에 대한 참조를 가져오고 공급자의 메서드를 GetAllProfiles 직접 호출합니다.

추가 정보

적용 대상

GetAllProfiles(ProfileAuthenticationOption, Int32, Int32, Int32)

사용자 프로필 데이터의 페이지를 검색합니다.

public:
 static System::Web::Profile::ProfileInfoCollection ^ GetAllProfiles(System::Web::Profile::ProfileAuthenticationOption authenticationOption, int pageIndex, int pageSize, [Runtime::InteropServices::Out] int % totalRecords);
public static System.Web.Profile.ProfileInfoCollection GetAllProfiles (System.Web.Profile.ProfileAuthenticationOption authenticationOption, int pageIndex, int pageSize, out int totalRecords);
static member GetAllProfiles : System.Web.Profile.ProfileAuthenticationOption * int * int * int -> System.Web.Profile.ProfileInfoCollection
Public Shared Function GetAllProfiles (authenticationOption As ProfileAuthenticationOption, pageIndex As Integer, pageSize As Integer, ByRef totalRecords As Integer) As ProfileInfoCollection

매개 변수

authenticationOption
ProfileAuthenticationOption

ProfileAuthenticationOption 열거형 값 중 하나로, 반환되는 프로필이 익명인지, 인증되었는지 또는 두 형식 모두인지를 지정합니다.

pageIndex
Int32

반환할 결과 페이지의 인덱스입니다. pageIndex는 0부터 시작합니다.

pageSize
Int32

반환할 결과 페이지의 크기입니다.

totalRecords
Int32

이 메서드가 반환될 때 전체 프로필 수를 식별하는 정수가 포함됩니다. 이 매개 변수는 초기화되지 않은 상태로 전달됩니다.

반환

데이터 소스에 있는 모든 프로필에 대한 사용자 프로필 정보가 포함된 ProfileInfoCollection입니다.

예제

모든 구성 된 프로필에 대 한 프로필 정보를 표시 하는 다음 코드 예제에서는 applicationName 데이터 페이지에 있습니다.

<%@ Page Language="C#" %>
<%@ Import Namespace="System.Web.Profile" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">

int pageSize = 5;
int totalProfiles;
int totalPages;
int currentPage = 1;

public void Page_Load()
{
  if (!IsPostBack)
  {
    GetProfiles();
  }
}

private void GetProfiles()
{
  ProfileGrid.DataSource = ProfileManager.GetAllProfiles(
                               ProfileAuthenticationOption.All,
                               currentPage - 1, pageSize, out totalProfiles);
  totalPages = ((totalProfiles - 1) / pageSize) + 1;

  // Ensure that we do not navigate past the last page of Profiles.

  if (currentPage > totalPages)
  {
    currentPage = totalPages;
    GetProfiles();
    return;
  }

  ProfileGrid.DataBind();
  CurrentPageLabel.Text = currentPage.ToString();
  TotalPagesLabel.Text = totalPages.ToString();

  if (currentPage == totalPages)
    NextButton.Visible = false;
  else
    NextButton.Visible = true;

  if (currentPage == 1)
    PreviousButton.Visible = false;
  else
    PreviousButton.Visible = true;

  if (totalProfiles <= 0)
    NavigationPanel.Visible = false;
  else
    NavigationPanel.Visible = true;
}

public void NextButton_OnClick(object sender, EventArgs args)
{
  currentPage = Convert.ToInt32(CurrentPageLabel.Text);
  currentPage++;
  GetProfiles();
}

public void PreviousButton_OnClick(object sender, EventArgs args)
{
  currentPage = Convert.ToInt32(CurrentPageLabel.Text);
  currentPage--;
  GetProfiles();
}

</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>Sample: Find Profiles</title>
</head>
<body>

<form id="form1" runat="server">
  <h3>Profile List</h3>

  <asp:Panel id="NavigationPanel" Visible="false" runat="server">
    <table border="0" cellpadding="3" cellspacing="3">
      <tr>
        <td style="width:100">Page <asp:Label id="CurrentPageLabel" runat="server" />
            of <asp:Label id="TotalPagesLabel" runat="server" /></td>
        <td style="width:60"><asp:LinkButton id="PreviousButton" Text="< Prev"
                            OnClick="PreviousButton_OnClick" runat="server" /></td>
        <td style="width:60"><asp:LinkButton id="NextButton" Text="Next >"
                            OnClick="NextButton_OnClick" runat="server" /></td>
      </tr>
    </table>
  </asp:Panel>

  <asp:GridView id="ProfileGrid" runat="server"
                CellPadding="2" CellSpacing="1" Gridlines="Both">
    <HeaderStyle BackColor="darkblue" ForeColor="white" />
  </asp:GridView>

</form>

</body>
</html>
<%@ Page Language="VB" %>
<%@ Import Namespace="System.Web.Profile" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">

Dim pageSize As Integer = 5
Dim totalProfiles As Integer 
Dim totalPages As Integer 
Dim currentPage As Integer = 1

Public Sub Page_Load()
  If Not IsPostBack Then  
    GetProfiles()
  End If
End Sub

Private Sub GetProfiles()

  ProfileGrid.DataSource = ProfileManager.GetAllProfiles( _
                               ProfileAuthenticationOption.All, _
                               currentPage - 1, pageSize, totalProfiles)
  totalPages = ((totalProfiles - 1) \ pageSize) + 1

  ' Ensure that we do not navigate past the last page of Profiles.

  If currentPage > totalPages Then
    currentPage = totalPages
    GetProfiles()
    Return
  End If

  ProfileGrid.DataBind()
  CurrentPageLabel.Text = currentPage.ToString()
  TotalPagesLabel.Text = totalPages.ToString()

  If currentPage = totalPages Then
    NextButton.Visible = False
  Else
    NextButton.Visible = True
  End If

  If currentPage = 1 Then
    PreviousButton.Visible = False
  Else
    PreviousButton.Visible = True
  End If

  If totalProfiles <= 0 Then
    NavigationPanel.Visible = False
  Else
    NavigationPanel.Visible = True
  End If
End Sub

Public Sub NextButton_OnClick(sender As Object, args As EventArgs)
  currentPage = Convert.ToInt32(CurrentPageLabel.Text)
  currentPage += 1
  GetProfiles()
End SUb

Public Sub PreviousButton_OnClick(sender As Object, args As EventArgs)
  currentPage = Convert.ToInt32(CurrentPageLabel.Text)
  currentPage -= 1
  GetProfiles()
End Sub

</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>Sample: Find Profiles</title>
</head>
<body>

<form id="form1" runat="server">
  <h3>Profile List</h3>

  <asp:Panel id="NavigationPanel" Visible="False" runat="server">
    <table border="0" cellpadding="3" cellspacing="3">
      <tr>
        <td style="width:100">Page <asp:Label id="CurrentPageLabel" runat="server" />
            of <asp:Label id="TotalPagesLabel" runat="server" /></td>
        <td style="width:60"><asp:LinkButton id="PreviousButton" Text="< Prev"
                            OnClick="PreviousButton_OnClick" runat="server" /></td>
        <td style="width:60"><asp:LinkButton id="NextButton" Text="Next >"
                            OnClick="NextButton_OnClick" runat="server" /></td>
      </tr>
    </table>
  </asp:Panel>

  <asp:GridView id="ProfileGrid" runat="server"
                CellPadding="2" CellSpacing="1" Gridlines="Both">
    <HeaderStyle BackColor="darkblue" ForeColor="white" />
  </asp:GridView>

</form>

</body>
</html>

설명

GetAllProfiles 메서드는 지정 된 애플리케이션에 대 한 데이터 소스에서 프로필 정보를 검색할 데는 applicationName 구성 파일에서 특성입니다. 사용 된 authenticationOption 익명 프로필에 있는지 여부를 지정 하려면 매개 변수는 프로필 또는를 검색할 수 있는 모든 프로필에만 인증 합니다.

반환한 결과 GetAllInactiveProfiles 에 의해 제한 됩니다 합니다 pageIndexpageSize 매개 변수입니다. 합니다 pageSize 의 최대 수를 식별 하는 매개 변수 ProfileInfo 에서 반환 하는 개체는 ProfileInfoCollection합니다. 매개 변수는 pageIndex 반환할 결과의 페이지를 식별합니다. 0은 첫 번째 페이지를 식별합니다. totalRecords 매개 변수는 out 제공authenticationOption된 에 따라 구성된 applicationName에 대한 비활성 사용자 프로필의 총 수로 설정된 매개 변수입니다. 예를 들어 구성된 applicationName에 대한 사용자가 13명이고 pageIndex 값이 pageSize 5 ProfileInfoCollection 인 경우 반환된 에는 여섯 번째부터 10번째까지의 프로필이 포함됩니다. totalRecords 매개 변수를 13으로 설정 됩니다.

메서드는 GetAllProfiles 기본 프로필 공급자의 메서드를 호출 GetAllProfiles 합니다. 기본 프로필 공급자는 프로필 구성 요소의 특성을 사용하여 defaultProvider 지정됩니다. 사용자 프로필에 기본 공급자가 아닌 프로필 공급자가 관리하는 속성이 포함된 경우 다른 프로필 공급자의 데이터 원본은 검색되지 않습니다. 기본 공급자가 아닌 프로필 공급자가 관리하는 프로필을 찾으려면 속성을 사용하여 Providers 프로필 공급자에 대한 참조를 가져오고 공급자의 메서드를 GetAllProfiles 직접 호출합니다.

추가 정보

적용 대상