RoleProvider.FindUsersInRole(String, String) 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.
Kullanıcı adının eşleşecek belirtilen kullanıcı adını içerdiği bir roldeki kullanıcı adları dizisini alır.
public:
abstract cli::array <System::String ^> ^ FindUsersInRole(System::String ^ roleName, System::String ^ usernameToMatch);
public abstract string[] FindUsersInRole (string roleName, string usernameToMatch);
abstract member FindUsersInRole : string * string -> string[]
Public MustOverride Function FindUsersInRole (roleName As String, usernameToMatch As String) As String()
Parametreler
- roleName
- String
Aranacak rol.
- usernameToMatch
- String
Aranacak kullanıcı adı.
Döndürülenler
Kullanıcı adının eşleştiği usernameToMatch
ve kullanıcının belirtilen rolün üyesi olduğu tüm kullanıcıların adlarını içeren bir dize dizisi.
Örnekler
Aşağıdaki kod örneğinde örnek FindUsersInRole bir uygulama gösterilmektedir.
public override string[] FindUsersInRole(string rolename, string usernameToMatch)
{
OdbcConnection conn = new OdbcConnection(connectionString);
OdbcCommand cmd = new OdbcCommand("SELECT Username FROM UsersInRoles " +
" WHERE Username LIKE ? AND RoleName = ? AND ApplicationName = ?", conn);
cmd.Parameters.Add("@UsernameSearch", OdbcType.VarChar, 255).Value = usernameToMatch;
cmd.Parameters.Add("@RoleName", OdbcType.VarChar, 255).Value = rolename;
cmd.Parameters.Add("@ApplicationName", OdbcType.VarChar, 255).Value = pApplicationName;
string tmpUserNames = "";
OdbcDataReader reader = null;
try
{
conn.Open();
reader = cmd.ExecuteReader();
while (reader.Read())
{
tmpUserNames += reader.GetString(0) + ",";
}
}
catch (OdbcException)
{
// Handle Exception.
}
finally
{
if (reader != null) { reader.Close(); }
conn.Close();
}
if (tmpUserNames.Length > 0)
{
// Remove trailing comma.
tmpUserNames = tmpUserNames.Substring(0, tmpUserNames.Length - 1);
return tmpUserNames.Split(',');
}
return null;
}
Public Overrides Function FindUsersInRole(ByVal rolename As String, ByVal userNameToMatch As String) As String()
Dim conn As OdbcConnection = New OdbcConnection(connectionString)
Dim cmd As OdbcCommand = New OdbcCommand("SELECT Username FROM UsersInRoles " & _
" WHERE Username LIKE ? AND RoleName = ? AND ApplicationName = ?", conn)
cmd.Parameters.Add("@UsernameSearch", OdbcType.VarChar, 255).Value = usernameToMatch
cmd.Parameters.Add("@RoleName", OdbcType.VarChar, 255).Value = rolename
cmd.Parameters.Add("@ApplicationName", OdbcType.VarChar, 255).Value = pApplicationName
Dim tmpUserNames As String = ""
Dim reader As OdbcDataReader = Nothing
Try
conn.Open()
reader = cmd.ExecuteReader()
Do While reader.Read()
tmpUserNames &= reader.GetString(0) & ","
Loop
Catch e As OdbcException
' Handle exception.
Finally
If Not reader Is Nothing Then reader.Close()
conn.Close()
End Try
If tmpUserNames.Length > 0 Then
' Remove trailing comma.
tmpUserNames = tmpUserNames.Substring(0, tmpUserNames.Length - 1)
Return tmpUserNames.Split(CChar(","))
End If
Return Nothing
End Function
Açıklamalar
FindUsersInRole yöntemi sınıfı tarafından çağrılır Roles ve kullanıcı adının yapılandırılan applicationName
için sağlanan usernameToMatch
ile eşleşmesini içerdiği bir roldeki kullanıcıların listesini döndürür. Joker karakter desteği, veri kaynağına göre eklenir. Kullanıcılar, kullanıcı adına göre alfabetik sırada döndürülür.
Veri kaynağında yoksa bir ProviderExceptionroleName
oluşturmanızı öneririz.