コード例 #1
0
        private async Task <T> CreateInternal <T>(RecruiterInput model)
            where T : RecruiterOutput

        {
            var recruiter = await Repository.Queryable().Where(x => x.Id == model.PersonId)
                            .FirstOrDefaultAsync();

            if (recruiter == null)
            {
                var entity = new Recruiter().InjectFrom(model) as Recruiter;

                await Repository.InsertAsync(entity, true);

                var output = await GetById <T>(model.PersonId);

                await Task.Run(() =>
                {
                    RaiseEvent(new RecruiterCreatedEvent <T>
                    {
                        Recruiter = output
                    });
                });

                return(output);
            }

            return(await GetById <T>(model.PersonId));
        }
コード例 #2
0
 public Task <T> Create <T>(RecruiterInput model
                            )
     where T : RecruiterOutput
 {
     return(CreateInternal <T>(model));
 }