コード例 #1
0
        public async Task <BaseDTO> FindByIdAsync(int id, int templateId)
        {
            //1. get template
            var template = await _templateRepository.FindByIdAsync(templateId, new string[] { "TemplateIncludes", "TemplateType" });

            if (template == null)
            {
                return(null);
            }

            string typeName = template.TemplateType.Route;

            //2. Getdata
            T data = await _dataRepository.FindByIdAsync(id, TypeIncludes.GetIncludes(typeName.ToLower()));

            if (data == null)
            {
                return(null);
            }
            //3. map and return
            return(_mapper.map(data, template.TemplateIncludes.Select(p => p.Include).ToArray()));
        }