public IHttpActionResult GetEmailDistributionListContactWithID([FromUri] int EmailDistributionListContactID, [FromUri] string lang = "en", [FromUri] string extra = "") { using (CSSPDBContext db = new CSSPDBContext(DatabaseType)) { EmailDistributionListContactService emailDistributionListContactService = new EmailDistributionListContactService(new Query() { Language = (lang == "fr" ? LanguageEnum.fr : LanguageEnum.en) }, db, ContactID); emailDistributionListContactService.Query = emailDistributionListContactService.FillQuery(typeof(EmailDistributionListContact), lang, 0, 1, "", "", extra); if (emailDistributionListContactService.Query.Extra == "A") { EmailDistributionListContactExtraA emailDistributionListContactExtraA = new EmailDistributionListContactExtraA(); emailDistributionListContactExtraA = emailDistributionListContactService.GetEmailDistributionListContactExtraAWithEmailDistributionListContactID(EmailDistributionListContactID); if (emailDistributionListContactExtraA == null) { return(NotFound()); } return(Ok(emailDistributionListContactExtraA)); } else if (emailDistributionListContactService.Query.Extra == "B") { EmailDistributionListContactExtraB emailDistributionListContactExtraB = new EmailDistributionListContactExtraB(); emailDistributionListContactExtraB = emailDistributionListContactService.GetEmailDistributionListContactExtraBWithEmailDistributionListContactID(EmailDistributionListContactID); if (emailDistributionListContactExtraB == null) { return(NotFound()); } return(Ok(emailDistributionListContactExtraB)); } else { EmailDistributionListContact emailDistributionListContact = new EmailDistributionListContact(); emailDistributionListContact = emailDistributionListContactService.GetEmailDistributionListContactWithEmailDistributionListContactID(EmailDistributionListContactID); if (emailDistributionListContact == null) { return(NotFound()); } return(Ok(emailDistributionListContact)); } } }
public void GetEmailDistributionListContactList_2Where_Test() { foreach (CultureInfo culture in AllowableCulture) { ChangeCulture(culture); using (CSSPDBContext dbTestDB = new CSSPDBContext(DatabaseTypeEnum.SqlServerTestDB)) { foreach (string extra in new List <string>() { null, "A", "B", "C", "D", "E" }) { EmailDistributionListContactService emailDistributionListContactService = new EmailDistributionListContactService(new Query() { Lang = culture.TwoLetterISOLanguageName }, dbTestDB, ContactID); emailDistributionListContactService.Query = emailDistributionListContactService.FillQuery(typeof(EmailDistributionListContact), culture.TwoLetterISOLanguageName, 0, 10000, "", "", "EmailDistributionListContactID,GT,2|EmailDistributionListContactID,LT,5", extra); List <EmailDistributionListContact> emailDistributionListContactDirectQueryList = new List <EmailDistributionListContact>(); emailDistributionListContactDirectQueryList = (from c in dbTestDB.EmailDistributionListContacts select c).Where(c => c.EmailDistributionListContactID > 2 && c.EmailDistributionListContactID < 5).ToList(); if (string.IsNullOrWhiteSpace(extra)) { List <EmailDistributionListContact> emailDistributionListContactList = new List <EmailDistributionListContact>(); emailDistributionListContactList = emailDistributionListContactService.GetEmailDistributionListContactList().ToList(); CheckEmailDistributionListContactFields(emailDistributionListContactList); Assert.AreEqual(emailDistributionListContactDirectQueryList[0].EmailDistributionListContactID, emailDistributionListContactList[0].EmailDistributionListContactID); } else { //Assert.AreEqual(true, false); } } } } }
public IHttpActionResult GetEmailDistributionListContactList([FromUri] string lang = "en", [FromUri] int skip = 0, [FromUri] int take = 200, [FromUri] string asc = "", [FromUri] string desc = "", [FromUri] string where = "", [FromUri] string extra = "") { using (CSSPDBContext db = new CSSPDBContext(DatabaseType)) { EmailDistributionListContactService emailDistributionListContactService = new EmailDistributionListContactService(new Query() { Lang = lang }, db, ContactID); if (extra == "A") // QueryString contains [extra=A] { emailDistributionListContactService.Query = emailDistributionListContactService.FillQuery(typeof(EmailDistributionListContactExtraA), lang, skip, take, asc, desc, where, extra); if (emailDistributionListContactService.Query.HasErrors) { return(Ok(new List <EmailDistributionListContactExtraA>() { new EmailDistributionListContactExtraA() { HasErrors = emailDistributionListContactService.Query.HasErrors, ValidationResults = emailDistributionListContactService.Query.ValidationResults, }, }.ToList())); } else { return(Ok(emailDistributionListContactService.GetEmailDistributionListContactExtraAList().ToList())); } } else if (extra == "B") // QueryString contains [extra=B] { emailDistributionListContactService.Query = emailDistributionListContactService.FillQuery(typeof(EmailDistributionListContactExtraB), lang, skip, take, asc, desc, where, extra); if (emailDistributionListContactService.Query.HasErrors) { return(Ok(new List <EmailDistributionListContactExtraB>() { new EmailDistributionListContactExtraB() { HasErrors = emailDistributionListContactService.Query.HasErrors, ValidationResults = emailDistributionListContactService.Query.ValidationResults, }, }.ToList())); } else { return(Ok(emailDistributionListContactService.GetEmailDistributionListContactExtraBList().ToList())); } } else // QueryString has no parameter [extra] or extra is empty { emailDistributionListContactService.Query = emailDistributionListContactService.FillQuery(typeof(EmailDistributionListContact), lang, skip, take, asc, desc, where, extra); if (emailDistributionListContactService.Query.HasErrors) { return(Ok(new List <EmailDistributionListContact>() { new EmailDistributionListContact() { HasErrors = emailDistributionListContactService.Query.HasErrors, ValidationResults = emailDistributionListContactService.Query.ValidationResults, }, }.ToList())); } else { return(Ok(emailDistributionListContactService.GetEmailDistributionListContactList().ToList())); } } } }