Построение CustomAuthorization в ASP.NET MVC

В DB у меня есть сущности Role и User с одним ко многим отношение.

Я пытаюсь создать собственный фильтр авторизации. Все учебники, которые я видел, используют членство по умолчанию ASP.NET. Все, что я знаю, это то, что мне нужно наследовать AuthorizationAttribute , но я не знаю, какие методы мне нужно переопределить и как их реализовать.

public class UserAuth : AuthorizeAttribute
{

}

В базе данных :

Роль

public class Role
{
    [Key]
    public int RoleID { get; set; }

    [Required]
    public int RolenameValue { get; set; }

    [MaxLength(100)]
    public string Description { get; set; }

    // // // // //

    public Rolename Rolename 
    {
        get { return (ProjectName.Domain.Enums.Rolename)RolenameValue; }
        set { RolenameValue = (int)value; }
    }

    public virtual ICollection<User> Users { get; set; }
}

Пользователь

public class User
{
    [Key]
    public int UserID { get; set; }

    [Required]
    [MaxLength(30)]
    public string Username { get; set; }

    [Required]
    [MinLength(5)]
    public string Password { get; set; }

    [Required]
    [DataType(DataType.EmailAddress)]
    public string Email { get; set; }

    [MaxLength(30)]
    public string FirstName { get; set; }

    [MaxLength(50)]
    public string LastName { get; set; }

    [DataType(DataType.Date)]
    public DateTime Birthdate { get; set; }

    public int GenderValue { get; set; }

    // // // // // // //

    public Gender Gender
    {
        get { return (ProjectName.Domain.Enums.Gender)GenderValue; }
        set { GenderValue = (int)value; }
    }

    public int RoleID { get; set; }

    [ForeignKey("RoleID")]
    public Role Role { get; set; }
0
задан Bip 25 May 2012 в 12:02
поделиться