Пример #1
0
        private Rol InflateRol(SqlDataReader reader)
        {
            byte accses   = reader.GetByte(reader.GetOrdinal("tipo"));
            bool endabled = reader.GetBoolean(reader.GetOrdinal("estado"));


            List <UserType> access = new List <UserType>();

            switch (accses)
            {
            case 1:
                access.Add(UserType.Administrador);
                break;

            case 3:
                access.Add(UserType.Cliente);
                break;

            case 4:
                access.Add(UserType.Administrador);
                access.Add(UserType.Cliente);
                break;

            case 5:
                access.Add(UserType.Proveedor);
                break;

            case 6:
                access.Add(UserType.Administrador);
                access.Add(UserType.Proveedor);
                break;

            case 8:
                access.Add(UserType.Cliente);
                access.Add(UserType.Proveedor);
                break;

            case 9:
                access.Add(UserType.Administrador);
                access.Add(UserType.Cliente);
                access.Add(UserType.Proveedor);
                break;

            default:
                throw new WrongUserTypeIdException("Problema en el casteo del acesso");
                break;
            }

            Rol rol = new Rol(reader.GetInt32(0), reader["nombre"].ToString(), access, endabled);

            Console.WriteLine("Usuario con rol:{0} estado: {1}", rol.GetUserTypes(), rol.name);
            return(rol);
        }