public BreedEntity[] GetPetBreed(int?subSpeciesId = 0, String name = "") { ValidSecurityToken(authHeader); SpeciesController controller = new SpeciesController(); BreedEntity[] breed; if (subSpeciesId < 0) { CacheHelper.Add("GetBreed", controller.GetBreed(), DateTime.Now.AddDays(1)); } if (CacheHelper.Exists("GetBreed") == false) { CacheHelper.Add("GetBreed", controller.GetBreed(), DateTime.Now.AddDays(1)); } CacheHelper.Get("GetBreed", out breed); if (!string.IsNullOrEmpty(name) && subSpeciesId <= 0) { return(breed.Where(x => x.Name.ToLower().Contains(name.ToLower())).ToArray()); } else if (string.IsNullOrEmpty(name) && subSpeciesId > 0) { return(breed.Where(x => x.Id == subSpeciesId).ToArray()); } else if (!string.IsNullOrEmpty(name) && subSpeciesId > 0) { return(breed.Where(x => x.Id == subSpeciesId && x.Name.ToLower().Contains(name.ToLower())).ToArray()); } return(breed); }