This article was translated by machine. To view in the article in English, select the English check box. You can also display the English text in a popup window by moving the mouse pointer over the text.
الترجمة
الأصلي
This documentation is archived and is not being maintained.

MembershipUserCollection.Add أسلوب

Visual Studio 2010

يضيف مستخدم المحدد عضوية إلى المجموعة.

مساحة الاسم:  System.Web.Security
التجميع:  System.Web.ApplicationServices (في System.Web.ApplicationServices.dll)

public void Add(
	MembershipUser user
)

المعلمات

user
النوع: System.Web.Security.MembershipUser
MembershipUser كائن لإضافة إلى مجموعة.

استثناء:شرط
System.NotSupportedException

المجموعة للقراءة فقط.

System.ArgumentNullException

TheUserNameof theuserهو null.

System.ArgumentException

على MembershipUserكائن بنفس UserNameالقيمة كما هو userمسبقاً في مجموعة.

Add أسلوب يستخدم عادة بتطبيقات موفر العضوية GetAllUsers، FindUsersByEmail، و FindUsersByNameالأساليب الخاصة MembershipProviderفئة. مجردة

يلي تعليمات برمجية يظهر المثال نموذج GetAllUsersالتنفيذ.


public override MembershipUserCollection GetAllUsers(int pageIndex, int pageSize, out int totalRecords)
{
  OdbcCommand cmd = new OdbcCommand("SELECT Count(*) FROM Users  " +
                                    "WHERE ApplicationName = ?", conn);
  cmd.Parameters.Add("@ApplicationName", OdbcType.VarChar, 255).Value = ApplicationName;

  MembershipUserCollection users = new MembershipUserCollection();

  OdbcDataReader reader = null;
  totalRecords = 0;

  try
  {
    conn.Open();
    totalRecords = (int)cmd.ExecuteScalar();

    if (totalRecords <= 0) { return users; }

    cmd.CommandText = "SELECT Username, Email, PasswordQuestion," +
             " Comment, IsApproved, CreationDate, LastLoginDate," +
             " LastActivityDate, LastPasswordChangedDate " +
             " FROM Users  " + 
             " WHERE ApplicationName = ? " +
             " ORDER BY Username Asc";

    reader = cmd.ExecuteReader();

    int counter = 0;
    int startIndex = pageSize * pageIndex;
    int endIndex = startIndex + pageSize - 1;

    while (reader.Read())
    {
      if (counter >= startIndex)
      {
        MembershipUser u = GetUserFromReader(reader);
        users.Add(u);
      }

      if (counter >= endIndex) { cmd.Cancel(); }

      counter++;
    }
  }
  catch (OdbcException)
  {
    // Handle exception.
  }
  finally
  {
    if (reader != null) { reader.Close(); }
     conn.Close();
  }

  return users;
}


//
// GetUserFromReader
// A helper function that takes the current row from the OdbcDataReader
// and populates a MembershipUser object with the values. Called by the 
// MembershipUser.GetUser implementation.
//

public MembershipUser GetUserFromReader(OdbcDataReader reader)
{
  object providerUserKey = reader.GetValue(0);
  string username = reader.GetString(1);
  string email = reader.GetString(2);

  string passwordQuestion = "";
  if (reader.GetValue(3) != DBNull.Value)
    passwordQuestion = reader.GetString(3);

  string comment = "";
  if (reader.GetValue(4) != DBNull.Value)
    comment = reader.GetString(4);

  bool isApproved = reader.GetBoolean(5);
  bool isLockedOut = reader.GetBoolean(6);
  DateTime creationDate = reader.GetDateTime(7);

  DateTime lastLoginDate = new DateTime();
  if (reader.GetValue(8) != DBNull.Value)
    lastLoginDate = reader.GetDateTime(8);

  DateTime lastActivityDate = reader.GetDateTime(9);
  DateTime lastPasswordChangedDate = reader.GetDateTime(10);

  DateTime lastLockedOutDate = new DateTime();
  if (reader.GetValue(11) != DBNull.Value)
    lastLockedOutDate = reader.GetDateTime(11);

  MembershipUser u = new MembershipUser(this.Name,
                                        username,
                                        providerUserKey,
                                        email,
                                        passwordQuestion,
                                        comment,
                                        isApproved,
                                        isLockedOut,
                                        creationDate,
                                        lastLoginDate,
                                        lastActivityDate,
                                        lastPasswordChangedDate,
                                        lastLockedOutDate);

  return u;
}


نظام التشغيل Windows 7, Windows Vista, Windows XP SP2, Windows XP Media Center Edition, الإصدار x64 من نظام التشغيل Windows XP Professional, Windows XP Starter Edition, Windows Server 2008, نظام التشغيل Windows Server 2003, نظام التشغيل Windows Server 2000 المزود بحزمة الخدمة SP4, نظام التشغيل Windows Millennium Edition, نظام التشغيل Windows 98

لا يدعم .NET Framework و .NET Compact Framework كافة الإصدارات الخاصة بكل نظام أساسي. للحصول على قائمة بالإصدارات المدعمة، راجع متطلبات النظام إطار عمل .NET.

.NET Framework

مدعوم في: 4, 3.5, 3.0, 2.0

NET Framework. Client Profile

مدعوم في: 4
إظهار: