예제 #1
0
        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 string GetTheBreedChallengeName(BreedGroupChallenge d)
        {
            if (d.BreedChallenges == null)
            {
                return("not specified");
            }

            return(d.BreedChallenges.First().Abbreviation);
        }