private List <IBreedGroupChallengeEntity> GetList <T>() where T : IBreedGroupChallengeEntity, new() { BreedChallenge defaultBC = new BreedChallenge() { Abbreviation = "" }; List <IBreedGroupChallengeEntity> items = new List <IBreedGroupChallengeEntity>(); using (var ctx = new HappyDogShowContext()) { var data = from d in ctx.BreedGroupChallenges.Include("BreedChallenges") select d; foreach (BreedGroupChallenge d in data) { items.Add(new T() { Id = d.ID, Abbreviation = d.Abbreviation, ShowChallengeName = d.ShowChallenge != null ? d.ShowChallenge.Name : "", JudginOrder = d.JudgingOrder, RelatedBreedChallengeName = GetTheBreedChallengeName(d), //d.BreedChallenges.FirstOrDefault() != null ? d.BreedChallenges.First().Abbreviation : "", Name = d.Name }); } } return(items); }
private int CreateEntity(IHandlerEntryEntity entity) { int newid = -1; using (var ctx = new HappyDogShowContext()) { DogRegistration selectedDog = ctx.DogRegistrations.Where(i => i.ID == entity.Dog.Id).First(); DogShow selectedShow = ctx.DogShows.Where(i => i.ID == entity.DogShow.Id).First(); HandlerClass selectedClass = ctx.HandlerClasses.Where(i => i.ID == entity.Class.Id).First(); HandlerRegistration selectedHander = ctx.HandlerRegistrations.Where(i => i.ID == entity.Handler.Id).First(); HandlerEntry newEntity = new HandlerEntry() { Dog = selectedDog, Show = selectedShow, EnteredClass = selectedClass, Handler = selectedHander }; ctx.HandlerEntries.Add(newEntity); ctx.SaveChanges(); newid = newEntity.ID; } return(newid); }
private List <IJudgeAssignmentInformation> GetList <T>(int dogShowId) where T : IJudgeAssignmentInformation, new() { List <IJudgeAssignmentInformation> items = new List <IJudgeAssignmentInformation>(); using (var ctx = new HappyDogShowContext()) { var groupJudges = from d in ctx.ShowGroupJudges where d.DogShow.ID == dogShowId select new { JudgeName = d.Judge.Name, GroupName = d.BreedGroup.Name }; var inShowJudges = from d in ctx.ShowInShowChallengeJudges where d.DogShow.ID == dogShowId select new { JudgeName = d.Judge.Name, ChallengeName = d.ShowChallenge.Name }; var handlerJudges = from d in ctx.ShowHandlerClassJudges where d.DogShow.ID == dogShowId select new { JudgeName = d.Judge.Name, ClassName = d.HandlerClass.Name }; foreach (var i in groupJudges) { items.Add(new JudgeAssignmentInformation() { JudgeName = i.JudgeName, AssignedTo = i.GroupName }); } foreach (var i in inShowJudges) { items.Add(new JudgeAssignmentInformation() { JudgeName = i.JudgeName, AssignedTo = i.ChallengeName }); } foreach (var i in handlerJudges) { items.Add(new JudgeAssignmentInformation() { JudgeName = i.JudgeName, AssignedTo = i.ClassName }); } } return(items); }
private List <IShowChallengeEntity> GetList <T>(int dogShowId) where T : IShowChallengeEntity, new() { BreedGroupChallenge defaultBGC = new BreedGroupChallenge() { Abbreviation = "" }; List <IShowChallengeEntity> items = new List <IShowChallengeEntity>(); using (var ctx = new HappyDogShowContext()) { var data = from sisj in ctx.ShowInShowChallengeJudges.Include("Judge").Include("ShowChallenge").Include("DogShow").Include("ShowChallenge.BreedGroupChallenges") where sisj.DogShow.ID == dogShowId select sisj; foreach (ShowInShowChallengeJudge d in data) { items.Add(new T() { Id = d.ID, Abbreviation = d.ShowChallenge.Abbreviation, JudginOrder = d.ShowChallenge.JudgingOrder, RelatedBreedGroupChallengeName = GetTheBreedGroupChallengeName(d.ShowChallenge), //d.BreedChallenges.FirstOrDefault() != null ? d.BreedChallenges.First().Abbreviation : "", Name = d.ShowChallenge.Name, ChallengeJudgeName = d.Judge.Name, ChallengeId = d.ShowChallenge.ID }); } } return(items); }
private int CreateEntity(IHandlerRegistration entity) { int newid = -1; using (var ctx = new HappyDogShowContext()) { Sex entitySex = ctx.Sexes.Where(g => g.ID == entity.SexId).First(); HandlerRegistration newEntity = new HandlerRegistration() { Sex = entitySex, DateOfBirth = entity.DateOfBirth, Surname = entity.Surname, Title = entity.Title, FirstName = entity.FirstName, Address = entity.Address, PostalCode = entity.PostalCode, Tel = entity.Tel, Cell = entity.Cell, Fax = entity.Fax, Email = entity.Email }; ctx.HandlerRegistrations.Add(newEntity); ctx.SaveChanges(); newid = newEntity.ID; } return(newid); }
private void UpdateEntity(IHandlerRegistration entity) { using (var ctx = new HappyDogShowContext()) { HandlerRegistration foundEntity = ctx.HandlerRegistrations.Where(d => d.ID == entity.Id).First(); if (foundEntity != null) { Sex entitySex = ctx.Sexes.Where(g => g.ID == entity.SexId).First(); foundEntity.Sex = entitySex; foundEntity.DateOfBirth = entity.DateOfBirth; foundEntity.Surname = entity.Surname; foundEntity.Title = entity.Title; foundEntity.FirstName = entity.FirstName; foundEntity.Address = entity.Address; foundEntity.PostalCode = entity.PostalCode; foundEntity.Tel = entity.Tel; foundEntity.Cell = entity.Cell; foundEntity.Fax = entity.Fax; foundEntity.Email = entity.Email; ctx.SaveChanges(); } } }
private IHandlerRegistration GetItem <T>(int id) where T : IHandlerRegistration, new() { IHandlerRegistration item = null; using (var ctx = new HappyDogShowContext()) { var foundHandler = ctx.HandlerRegistrations.Where(d => d.ID == id).Include(b => b.Sex).First(); if (foundHandler != null) { item = new T() { Id = foundHandler.ID, SexId = foundHandler.Sex.ID, SexName = foundHandler.Sex.Name, DateOfBirth = foundHandler.DateOfBirth, Surname = foundHandler.Surname, Title = foundHandler.Title, FirstName = foundHandler.FirstName, Address = foundHandler.Address, PostalCode = foundHandler.PostalCode, Tel = foundHandler.Tel, Cell = foundHandler.Cell, Fax = foundHandler.Fax, Email = foundHandler.Email } } ; } return(item); } }
private List <IHandlerRegistration> GetList <T>() where T : IHandlerRegistration, new() { List <IHandlerRegistration> items = new List <IHandlerRegistration>(); using (var ctx = new HappyDogShowContext()) { var Handlers = from d in ctx.HandlerRegistrations select new T() { Id = d.ID, SexId = d.Sex.ID, SexName = d.Sex.Name, DateOfBirth = d.DateOfBirth, Surname = d.Surname, Title = d.Title, FirstName = d.FirstName, Address = d.Address, PostalCode = d.PostalCode, Tel = d.Tel, Cell = d.Cell, Fax = d.Fax, Email = d.Email }; foreach (var d in Handlers) { items.Add(d); } } return(items); }
private List <IBreedEntity> GetListForGroupAndShow <T>(int dogShowId, int breedGroupId) where T : IBreedEntity, new() { List <IBreedEntity> items = new List <IBreedEntity>(); using (var ctx = new HappyDogShowContext()) { var rawdata = from e in ctx.BreedClassEntries where e.Entry.Show.ID == dogShowId && e.Entry.Dog.Breed.BreedGroup.ID == breedGroupId select e.Entry.Dog.Breed; var data = rawdata.Distinct(); foreach (Breed d in data) { items.Add(new T() { Id = d.ID, Name = d.Name }); } } return(items); }
private void UpdateEntity(IHandlerEntryEntity entity) { using (var ctx = new HappyDogShowContext()) { HandlerEntry foundEntity = ctx.HandlerEntries.Where(d => d.ID == entity.Id).First(); if (foundEntity != null) { if (entity.Dog != null) { DogRegistration selectedDog = ctx.DogRegistrations.Where(i => i.ID == entity.Dog.Id).First(); foundEntity.Dog = selectedDog; } if (entity.DogShow != null) { DogShow selectedShow = ctx.DogShows.Where(i => i.ID == entity.DogShow.Id).First(); foundEntity.Show = selectedShow; } if (entity.Class != null) { HandlerClass selectedClass = ctx.HandlerClasses.Where(i => i.ID == entity.Class.Id).First(); foundEntity.EnteredClass = selectedClass; } foundEntity.Number = entity.Number; ctx.SaveChanges(); } } }
private void UpdateEntity(IBreedEntryEntity entity) { using (var ctx = new HappyDogShowContext()) { DogShow selectedShow = ctx.DogShows.Where(i => i.ID == entity.ShowId).First(); BreedEntry foundEntity = ctx.BreedEntries.Where(d => d.ID == entity.Id).Include(b => b.EnteredClasses).First(); if (foundEntity != null) { if (entity.Classes != null) { foreach (var i in entity.Classes) { // existing class entry if (i.ID > 0) { if (i.IsSelected) { // nothing to do, keep it } else { var foundEntries = ctx.BreedClassEntries.Where(ec => ec.ID == i.ID); if (foundEntries.Count() == 1) { ctx.BreedClassEntries.Remove(foundEntries.First()); } } } // potential new class entry else { if (i.IsSelected) { BreedClass breedClass = ctx.BreedClasses.Where(k => k.ID == i.BreedClassID).First(); foundEntity.EnteredClasses.Add(new BreedClassEntry() { Class = breedClass }); } else { // ignore } } } } foundEntity.Show = selectedShow; foundEntity.Number = entity.Number; ctx.SaveChanges(); } } }
private List <IBreedChallengeResult> GetList <T>(int dogShowId, int breedId) where T : IBreedChallengeResult, new() { List <IBreedChallengeResult> items = new List <IBreedChallengeResult>(); PopulateBreedChallengeResultsTableForDogShow(dogShowId); using (var ctx = new HappyDogShowContext()) { var rawdata = from r in ctx.BreedChallengeResults where r.DogShow.ID == dogShowId select r; if (breedId > 0) { rawdata = rawdata.Where(r => r.Breed.ID == breedId); } var actualEntries = from r in rawdata orderby r.BreedChallenge.JudgingOrder, r.Placing select new T { Id = r.ID, ShowId = r.DogShow.ID, ShowName = r.DogShow.Name, Challenge = r.BreedChallenge.Name, EntryNumber = r.EntryNumber, Placing = r.Placing, Print = false, JudgingOrder = r.BreedChallenge.JudgingOrder, BreedGroupName = r.Breed.BreedGroup.Name, BreedName = r.Breed.Name }; foreach (var entry in actualEntries.ToList()) { var relatedBreedGroupChallenges = from bc in ctx.BreedChallenges.Include("BreedGroupChallenge") where bc.Name == entry.Challenge select bc.BreedGroupChallenge; var relatedData = relatedBreedGroupChallenges.ToList(); if (relatedData.Count == 1) { var challenge = relatedData.First(); if (challenge != null) { entry.RelatedBreedGroupChallengeName = challenge.Name; } } items.Add(entry); } } return(items); }
private int CreateEntity(IBreedEntryEntity entity) { int newid = -1; using (var ctx = new HappyDogShowContext()) { DogRegistration selectedDog = ctx.DogRegistrations.Where(i => i.ID == entity.Dog.Id).First(); DogShow selectedShow = ctx.DogShows.Where(i => i.ID == entity.ShowId).First(); List <BreedClassEntry> enteredClasses = new List <BreedClassEntry>(); foreach (var i in entity.Classes.Where(j => j.IsSelected)) { BreedClass breedClass = ctx.BreedClasses.Where(k => k.ID == i.BreedClassID).First(); enteredClasses.Add(new BreedClassEntry() { Class = breedClass });; } if (string.IsNullOrEmpty(entity.Number)) { var usednumbers = ctx.BreedEntries.Where(be => be.Show.ID == entity.ShowId).Select(be => be.Number).ToList().Distinct().ToList(); if (usednumbers.Count > 0) { int temp; int max = usednumbers.Select(n => int.TryParse(n, out temp) ? temp : 0).Max(); if (max > 0) { entity.Number = (max + 1).ToString(); } } else { entity.Number = ""; } } BreedEntry newEntity = new BreedEntry() { Dog = selectedDog, EnteredClasses = enteredClasses, Show = selectedShow, Number = entity.Number }; ctx.BreedEntries.Add(newEntity); ctx.SaveChanges(); newid = newEntity.ID; } return(newid); }
private List <IBreedEntryClassEntry> GetBreedEntryClassEntryList <T>(int dogShowId, int breedId) where T : IBreedEntryClassEntry, new() { List <IBreedEntryClassEntry> items = new List <IBreedEntryClassEntry>(); using (var ctx = new HappyDogShowContext()) { var rawData = from c in ctx.BreedClassEntries where c.Entry.Show != null select c; if (dogShowId > 0) { rawData = rawData.Where(c => c.Entry.Show.ID == dogShowId); } if (breedId > 0) { rawData = rawData.Where(c => c.Entry.Dog.Breed.ID == breedId); } var data = from c in rawData select new T() { Id = c.ID, ShowName = c.Entry.Show.Name, ShowId = c.Entry.Show.ID, ShowDate = c.Entry.Show.ShowDate, BreedGroupName = c.Entry.Dog.Breed.BreedGroup.Name, BreedGroupId = c.Entry.Dog.Breed.BreedGroup.ID, BreedName = c.Entry.Dog.Breed.Name, BreedId = c.Entry.Dog.Breed.ID, GenderName = c.Entry.Dog.Gender.Name, GenderId = c.Entry.Dog.Gender.ID, DogName = c.Entry.Dog.RegisteredName, DogId = c.Entry.Dog.ID, DogRegistrationNumber = c.Entry.Dog.RegisrationNumber, DogDOB = c.Entry.Dog.DateOfBirth, EntryNumber = c.Entry.Number, EnteredClassName = c.Class.Name, EnteredClassMaxAgeInMonths = c.Class.MaxAgeInMonths, EnteredClassMinAgeInMonths = c.Class.MinAgeInMonths, Result = c.Result, BreedGroupJudgeName = c.Entry.Show.ShowGroupJudges.Where(i => i.BreedGroup.ID == c.Entry.Dog.Breed.BreedGroup.ID).FirstOrDefault().Judge.Name, BreedJudgeName = c.Entry.Show.ShowBreedJudges.Where(i => i.Breed.ID == c.Entry.Dog.Breed.ID).FirstOrDefault().Judge.Name, JudgingOrder = c.Class.JudgingOrder }; data.ToList().ForEach(c => items.Add(c)); } return(items); }
private void DeleteEntity(IEntityWithID entity) { using (var ctx = new HappyDogShowContext()) { HandlerEntry foundEntity = ctx.HandlerEntries.Where(d => d.ID == entity.Id).First(); if (foundEntity != null) { ctx.HandlerEntries.Remove(foundEntity); ctx.SaveChanges(); } } }
private void UpdateEntity(IMultipleBreedEntryClassEntry entity) { using (var ctx = new HappyDogShowContext()) { foreach (IBreedEntryClassEntry classEntry in entity.BreedClassEntries) { BreedClassEntry foundEntry = ctx.BreedClassEntries.Where(i => i.ID == classEntry.Id).First(); foundEntry.Result = classEntry.Result; } ctx.SaveChanges(); } }
private void UpdateEntity(IDogShowEntity entity) { using (var ctx = new HappyDogShowContext()) { DogShow foundEntity = ctx.DogShows.Where(d => d.ID == entity.Id).First(); if (foundEntity != null) { foundEntity.Name = entity.DogShowName; foundEntity.ShowDate = entity.ShowDate; ctx.SaveChanges(); } } }
private IHandlerEntryEntity GetEntity <T>(int id) where T : IHandlerEntryEntity, new() { IHandlerEntryEntity result = new T(); using (var ctx = new HappyDogShowContext()) { HandlerEntry foundEntry = ctx.HandlerEntries.Where(i => i.ID == id).Include(b => b.Show).First(); if (foundEntry != null) { result.Id = foundEntry.ID; result.Number = foundEntry.Number; } } return(result); }
private void UpdateEntity(IChallengeResultCollection <IChallengeResult> entity) { using (var ctx = new HappyDogShowContext()) { foreach (IChallengeResult result in entity.Results) { var foundResults = ctx.HandlerChallengeResults.Where(i => i.ID == result.Id); if (foundResults.Count() == 1) { HandlerChallengeResult foundResult = foundResults.First(); foundResult.EntryNumber = result.EntryNumber; } } ctx.SaveChanges(); } }
private void DeleteEntity(IEntityWithID entity) { using (var ctx = new HappyDogShowContext()) { BreedEntry foundEntity = ctx.BreedEntries.Where(d => d.ID == entity.Id).Include(b => b.EnteredClasses).First(); if (foundEntity != null) { if (foundEntity.EnteredClasses != null) { foundEntity.EnteredClasses.Clear(); } ctx.BreedEntries.Remove(foundEntity); ctx.SaveChanges(); } } }
private IDogRegistration GetItem <T>(int id) where T : IDogRegistration, new() { IDogRegistration item = null; using (var ctx = new HappyDogShowContext()) { var founddog = ctx.DogRegistrations.Where(d => d.ID == id).Include(b => b.Gender).Include(b => b.Breed).First(); if (founddog != null) { item = new T() { Id = founddog.ID, RegisrationNumber = founddog.RegisrationNumber, GenderId = founddog.Gender.ID, GenderName = founddog.Gender.Name, DateOfBirth = founddog.DateOfBirth, BreedId = founddog.Breed.ID, BreedName = founddog.Breed.Name, RegisteredName = founddog.RegisteredName, Qualifications = founddog.Qualifications, ChipOrTattooNumber = founddog.ChipOrTattooNumber, Sire = founddog.Sire, Dam = founddog.Dam, BredBy = founddog.BredBy, Colour = founddog.Colour, RegisteredOwnerSurname = founddog.RegisteredOwnerSurname, RegisteredOwnerTitle = founddog.RegisteredOwnerTitle, RegisteredOwnerInitials = founddog.RegisteredOwnerInitials, RegisteredOwnerAddress = founddog.RegisteredOwnerAddress, RegisteredOwnerPostalCode = founddog.RegisteredOwnerPostalCode, RegisteredOwnerKUSANo = founddog.RegisteredOwnerKUSANo, RegisteredOwnerTel = founddog.RegisteredOwnerTel, RegisteredOwnerCell = founddog.RegisteredOwnerCell, RegisteredOwnerFax = founddog.RegisteredOwnerFax, RegisteredOwnerEmail = founddog.RegisteredOwnerEmail } } ; } return(item); } }
private List <IDogRegistration> GetList <T>() where T : IDogRegistration, new() { List <IDogRegistration> items = new List <IDogRegistration>(); using (var ctx = new HappyDogShowContext()) { var dogs = from d in ctx.DogRegistrations select new T() { Id = d.ID, RegisrationNumber = d.RegisrationNumber, GenderId = d.Gender.ID, GenderName = d.Gender.Name, DateOfBirth = d.DateOfBirth, BreedId = d.Breed.ID, BreedName = d.Breed.Name, RegisteredName = d.RegisteredName, Qualifications = d.Qualifications, ChipOrTattooNumber = d.ChipOrTattooNumber, Sire = d.Sire, Dam = d.Dam, BredBy = d.BredBy, Colour = d.Colour, RegisteredOwnerSurname = d.RegisteredOwnerSurname, RegisteredOwnerTitle = d.RegisteredOwnerTitle, RegisteredOwnerInitials = d.RegisteredOwnerInitials, RegisteredOwnerAddress = d.RegisteredOwnerAddress, RegisteredOwnerPostalCode = d.RegisteredOwnerPostalCode, RegisteredOwnerKUSANo = d.RegisteredOwnerKUSANo, RegisteredOwnerTel = d.RegisteredOwnerTel, RegisteredOwnerCell = d.RegisteredOwnerCell, RegisteredOwnerFax = d.RegisteredOwnerFax, RegisteredOwnerEmail = d.RegisteredOwnerEmail }; foreach (var d in dogs) { items.Add(d); } } return(items); }
private int CreateEntity(IDogRegistration entity) { int newid = -1; using (var ctx = new HappyDogShowContext()) { Gender entityGender = ctx.Genders.Where(g => g.ID == entity.GenderId).First(); Breed entityBreed = ctx.Breeds.Where(g => g.ID == entity.BreedId).First(); DogRegistration newEntity = new DogRegistration() { RegisrationNumber = entity.RegisrationNumber, Gender = entityGender, DateOfBirth = entity.DateOfBirth, Breed = entityBreed, RegisteredName = entity.RegisteredName, Qualifications = entity.Qualifications, ChipOrTattooNumber = entity.ChipOrTattooNumber, Sire = entity.Sire, Dam = entity.Dam, BredBy = entity.BredBy, Colour = entity.Colour, RegisteredOwnerSurname = entity.RegisteredOwnerSurname, RegisteredOwnerTitle = entity.RegisteredOwnerTitle, RegisteredOwnerInitials = entity.RegisteredOwnerInitials, RegisteredOwnerAddress = entity.RegisteredOwnerAddress, RegisteredOwnerPostalCode = entity.RegisteredOwnerPostalCode, RegisteredOwnerKUSANo = entity.RegisteredOwnerKUSANo, RegisteredOwnerTel = entity.RegisteredOwnerTel, RegisteredOwnerCell = entity.RegisteredOwnerCell, RegisteredOwnerFax = entity.RegisteredOwnerFax, RegisteredOwnerEmail = entity.RegisteredOwnerEmail }; ctx.DogRegistrations.Add(newEntity); ctx.SaveChanges(); newid = newEntity.ID; } return(newid); }
private List <ISexEntity> GetList <T>() where T : ISexEntity, new() { List <ISexEntity> items = new List <ISexEntity>(); using (var ctx = new HappyDogShowContext()) { var data = from d in ctx.Sexes select d; foreach (Sex d in data) { items.Add(new T() { Id = d.ID, Name = d.Name }); } } return(items); }
private int CreateEntity(IDogShowEntity entity) { int newid = -1; using (var ctx = new HappyDogShowContext()) { DogShow newEntity = new DogShow() { ID = entity.Id, Name = entity.DogShowName, ShowDate = entity.ShowDate }; ctx.DogShows.Add(newEntity); ctx.SaveChanges(); newid = newEntity.ID; } return(newid); }
private List <IClubEntity> GetList <T>() where T : IClubEntity, new() { List <IClubEntity> items = new List <IClubEntity>(); using (var ctx = new HappyDogShowContext()) { var clubs = from d in ctx.Clubs select d; foreach (Club ds in clubs) { items.Add(new T() { Id = ds.ID, Name = ds.Name }); } } return(items); }
private List <IHandlerClassEntity> GetHandlerClassList <T>() where T : IHandlerClassEntity, new() { List <IHandlerClassEntity> items = new List <IHandlerClassEntity>(); using (var ctx = new HappyDogShowContext()) { var data = from d in ctx.HandlerClasses select new T() { Id = d.ID, Description = d.Description, Name = d.Name }; foreach (var item in data) { items.Add(item); } } return(items); }
private List <IBreedEntity> GetList <T>() where T : IBreedEntity, new() { List <IBreedEntity> items = new List <IBreedEntity>(); using (var ctx = new HappyDogShowContext()) { var data = from d in ctx.Breeds orderby d.Name ascending select d; foreach (Breed d in data) { items.Add(new T() { Id = d.ID, Name = d.Name }); } } return(items); }
private List <IDogShowEntity> GetDogShowList <T>() where T : IDogShowEntity, new() { List <IDogShowEntity> items = new List <IDogShowEntity>(); using (var ctx = new HappyDogShowContext()) { var shows = from d in ctx.DogShows orderby d.ShowDate descending, d.Name ascending select d; foreach (DogShow ds in shows) { items.Add(new T() { Id = ds.ID, DogShowName = ds.Name, ShowDate = ds.ShowDate }); } } return(items); }
private List <IBreedClassEntryEntityWithClassDetailForSelection> GetListOfClassEntriesForBreedEntry <T>(int id) where T : IBreedClassEntryEntityWithClassDetailForSelection, new() { List <IBreedClassEntryEntityWithClassDetailForSelection> items = new List <IBreedClassEntryEntityWithClassDetailForSelection>(); using (var ctx = new HappyDogShowContext()) { var data = from d in ctx.BreedClasses select d; List <BreedClassEntry> enteredClasses = ctx.BreedClassEntries.Where(i => i.Entry.ID == id).Include(b => b.Class).ToList(); foreach (BreedClass i in data) { T itemToAdd = new T() { BreedClassID = i.ID, BreedClassName = i.Name, BreedClassDescription = i.Description, MinAgeInMonths = i.MinAgeInMonths, MaxAgeInMonths = i.MaxAgeInMonths }; List <BreedClassEntry> classEntries = enteredClasses.Where(c => c.Class.ID == itemToAdd.BreedClassID).ToList(); if (classEntries.Count == 1) { BreedClassEntry classEntry = classEntries.First(); itemToAdd.ID = classEntry.ID; itemToAdd.IsSelected = true; } items.Add(itemToAdd); } } return(items); }