BlogEngine.Core.Providers.DbRoleProvider.GetRolesForUser C# (CSharp) Method

GetRolesForUser() public method

Return an array of roles that user is in
public GetRolesForUser ( string username ) : string[]
username string The user to return a list of roles for.
return string[]
        public override string[] GetRolesForUser(string username)
        {
            var roles = new List<string>();

            using (var conn = this.CreateConnection())
            {
                if (conn.HasConnection)
                {
                    var sqlQuery = string.Format(
                        " SELECT ur.role " +
                        " FROM {0}UserRoles ur " +
                        " WHERE ur.BlogID   = {1}blogid " +
                        " AND   ur.UserName = {1}name", this.tablePrefix, this.parmPrefix);

                    using (var cmd = conn.CreateTextCommand(sqlQuery))
                    {
                        cmd.Parameters.Add(conn.CreateParameter(FormatParamName("blogid"), Blog.CurrentInstance.Id.ToString()));
                        cmd.Parameters.Add(conn.CreateParameter(FormatParamName("name"), username));

                        using (var rdr = cmd.ExecuteReader())
                        {
                            while (rdr.Read())
                            {
                                if (!rdr.IsDBNull(0))
                                {
                                    roles.Add(rdr.GetString(0));
                                }
                            }
                        }
                    }
                }
            }

            return roles.ToArray();
        }