/// <summary> /// /// </summary> /// <param name="reqparam"></param> /// <returns></returns> public RESPONSE_FINDARTIFACT FindArtifact(REQUEST_FINDARTIFACT reqparam) { var rsp = new RESPONSE_FINDARTIFACT(); IList <Artifact> artifact = null; using (var dbc = new AppDbContext()) { var repo = new ArtifactRepository(dbc); switch (reqparam.TargetType) { case FINDTARGET_SELECTOR.CATEGORY: var r = repo.FindByCategory(new Category { Id = reqparam.TargetId }); artifact = new List <Artifact>(r.ToArray().OrderBy(p => p.Title)); rsp.Success = true; break; case FINDTARGET_SELECTOR.TAG: var rtags = repo.FindByTag(new Tag { Id = reqparam.TargetId }); artifact = new List <Artifact>(rtags.ToArray().OrderBy(p => p.Title)); rsp.Success = true; break; default: rsp.Success = false; rsp.Message = "不明な取得条件です"; break; } } if (artifact != null) { foreach (var prop in artifact) { var mapped = Mapper.Map <DataArtifact>(prop); rsp.Artifacts.Add(mapped); } } return(rsp); }