public static ClinicalCategoryDto ToDto(this ClinicalCategory cc, bool cascade = true) { cc.ClinicalItems?.ForEach(v => v.ClinicalCategoryId = cc.Id); cc.ClinicalProductCategories?.ForEach(v => v.ClinicalCategoryId = cc.Id); cc.Features?.ForEach(v => v.ClinicalCategoryId = cc.Id); var dto = new ClinicalCategoryDto { Name = cc.Name, Code = cc.Code, //ClinicalItems = cc.ClinicalItems?.Select(v => v.ToDto()).ToList(), //ClinicalProductCategories = cc.ClinicalProductCategories?.Select(v => v.ToDto()).ToList() , //Features = cc.Features?.Select(v => v.ToDto()).ToList() }; if (cascade) { dto.ClinicalItems = cc.ClinicalItems?.Select(v => v.ToDto()).ToList(); dto.ClinicalProductCategories = cc.ClinicalProductCategories?.Select(v => v.ToDto()).ToList(); dto.Features = cc.Features?.Select(v => v.ToDto()).ToList(); } ((IData)cc).ToDto((IDataDto)dto); return(dto); }
public static ClinicalCategory ToDomain(this ClinicalCategoryDto cC, ClinicalCategory originalCC = null) { if (originalCC != null && originalCC.Id == cC.Id) { originalCC.Name = cC.Name; originalCC.Code = cC.Code; ((IDataDto)cC).ToDomain((IData)originalCC); return(originalCC); } var data = new ClinicalCategory { Name = cC.Name, Code = cC.Code, // ClinicalItems = cC.ClinicalItems?.Select(v => v.ToDomain()).ToList() }; ((IDataDto)cC).ToDomain((IData)data); return(data); }
public void Post() { try { using (var server = TestServer.Create <MyStartup>()) { var dto = new ClinicalCategoryDto { Id = 0, Name = "Clinical 1", Code = "CC1" }; HttpResponseMessage response; response = server.HttpClient.PostAsJsonAsync("api/ClinicalCategory", dto).Result; } } catch (Exception ex) { } }