public async Task <IActionResult> Edit(Guid id, [Bind("FirstName,LastName,Gender,Age,Bio,GiftName,GiftDescription,GiftImage,GiftUrl,GiftReservedFrom,ActiveFrom,ActiveTo,IsActive,ActionTypeId,StatusId,CreatedBy,CreatedAt,EditedBy,EditedAt,Id")] Donatee donatee) { if (id != donatee.Id) { return(NotFound()); } if (ModelState.IsValid) { try { _context.Update(donatee); await _context.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!DonateeExists(donatee.Id)) { return(NotFound()); } else { throw; } } return(RedirectToAction(nameof(Index))); } ViewData["ActionTypeId"] = new SelectList(_context.ActionTypes, "Id", "ActionTypeValue", donatee.ActionTypeId); ViewData["StatusId"] = new SelectList(_context.Statuses, "Id", "StatusValue", donatee.StatusId); return(View(donatee)); }
public async Task <IActionResult> Create([Bind("FirstName,LastName,Gender,Age,Bio,GiftName,GiftDescription,GiftImage,GiftUrl,GiftReservedFrom,ActiveFrom,ActiveTo,IsActive,ActionTypeId,StatusId,CreatedBy,CreatedAt,EditedBy,EditedAt,Id")] Donatee donatee) { if (ModelState.IsValid) { donatee.Id = Guid.NewGuid(); _context.Add(donatee); await _context.SaveChangesAsync(); return(RedirectToAction(nameof(Index))); } ViewData["ActionTypeId"] = new SelectList(_context.ActionTypes, "Id", "ActionTypeValue", donatee.ActionTypeId); ViewData["StatusId"] = new SelectList(_context.Statuses, "Id", "StatusValue", donatee.StatusId); return(View(donatee)); }
public async Task <Guid> SaveDonatee([FromBody] DonateeModel donateeModel) { var donatee = new Donatee( donateeModel.Name, donateeModel.Title, donateeModel.EmailAddress, donateeModel.Story, donateeModel.EndDate, donateeModel.Address, donateeModel.Keywords, donateeModel.Image); this.db.Donatee.Add(donatee); await this.db.SaveChangesAsync(); try { if (!string.IsNullOrEmpty(donateeModel.EmailAddress)) { var client = GetClient(); var fullAddress = $"{this.configuration.GetValue<string>("PartWithEndpoint")}/content/{donatee.Id}"; var htmlBody = "<p>Thank you for using PartWith!<br/> Here is a direct " + "<a href=" + fullAddress + ">link</a>" + " to your campaign. </p>"; var mail = new MailMessage("*****@*****.**", donateeModel.EmailAddress, "Track PartWith campaign: " + donateeModel.Title, htmlBody); mail.IsBodyHtml = true; client.Send(mail); } } catch (Exception ex) { Console.WriteLine(ex); } return(donatee.Id); }