public async Task <IActionResult> Create(Organisation organisation) { var results = await _organisationService.CreateAsync(organisation); organisation = await _organisationService.GetAsync(results.ObjectReference[0]); return(CreatedAtAction("Create", organisation)); }
public async Task <HttpResponseMessage> Post(HttpRequestMessage req, TraceWriter log) { var payload = await req.Content.ReadAsAsync <Organisation>(); var item = await _organisationService.CreateAsync(payload, req); return(req.CreateResponse(HttpStatusCode.Created, item)); }
public async Task <HttpResponseMessage> Post(HttpRequestMessage req, TraceWriter log) { if (req.Content.IsMimeMultipartContent() == false) { return(req.CreateResponse(HttpStatusCode.BadRequest)); } Stream fileStream = null; var streamProvider = await req.Content.ReadAsMultipartAsync(new MultipartMemoryStreamProvider()); Organisation organisation = null; var filename = string.Empty; string organisationId = string.Empty; foreach (HttpContent content in streamProvider.Contents) { Stream stream = content.ReadAsStreamAsync().Result; string name = content.Headers.ContentDisposition.FileName; if (!string.IsNullOrEmpty(content.Headers.ContentDisposition.FileName)) { filename = content.Headers.ContentDisposition.FileName; log.Info($"Filename: {content.Headers.ContentDisposition.FileName}"); fileStream = stream; } else { var contents = new StreamReader(stream).ReadToEnd(); if (content.Headers.ContentDisposition.Name == "\"organisation\"") { organisation = JsonConvert.DeserializeObject <Organisation>(contents); } log.Info($"{content.Headers.ContentDisposition.Name}: {contents}"); } } if (string.IsNullOrWhiteSpace(organisation.id)) { organisation = await _organisationService.CreateAsync(organisation, req); } var attachment = await _organisationRepository.AddAttachment(organisation.id, fileStream, "image/jpeg", filename); organisation.PhotoId = attachment.Resource.Id; await _organisationService.UpdateAsync(organisation, req); return(req.CreateResponse(HttpStatusCode.OK, organisation)); }
public async Task <IActionResult> CreateOrganisation([FromBody] CreateOrganisationRequest payload) { BackgroundJob.Enqueue(() => _organisationService.CreateAsync(payload)); return(new OkResult()); }