Exemplo n.º 1
0
 public Disk(string name, string description, decimal price, EDiskGenre genre, string imageUrl)
 {
     Name        = name;
     Description = description;
     Price       = price;
     Genre       = genre;
     ImageURL    = imageUrl;
     new ValidationContract()
     .IsNotNullOrEmpty(Name, "Name", "Nome é obrigatório")
     .HasMaxLen(Name, 100, "Name", "Nome deve ter até 100 caracteres")
     .IsNotNullOrEmpty(Description, "Description", "Descrição é obrigatório")
     .HasMaxLen(Description, 300, "Description", "Descrição deve ter até 300 caracteres")
     .IsGreaterThan(Price, 0, "Price", "Preço deve ser maior que zero");
 }
Exemplo n.º 2
0
        private decimal GetCashbackPercentage(DayOfWeek day, EDiskGenre genre)
        {
            switch (genre)
            {
            case EDiskGenre.POP:
                return(ReturnPopPer(day));

            case EDiskGenre.MPB:
                return(ReturnMPBPer(day));

            case EDiskGenre.CLASSIC:
                return(ReturnClassicPer(day));

            case EDiskGenre.ROCK:
                return(ReturnRockPer(day));

            default:
                throw new Exception("Não é possível retornar o cahback pois o gênero não foi encontrado");
            }
        }