public void Sign(int petitionID, string userId) { using (var context = ApplicationDbContext.Create()) { var user = context.Users.Where(x => x.Id == userId).FirstOrDefault(); if (user == null) { return; } var petition = context.Petitions.Where(x => petitionID == x.PetitionID).FirstOrDefault(); if (petition == null) { return; } var signature = context.PetitionSignatures.Where(x => x.ApplicationUserID == userId && x.PetitionID == petitionID).FirstOrDefault(); if (signature != null) { return; } var newSignature = new PetitionSignature { PetitionID = petitionID, ApplicationUserID = userId, SignedTime = DateTime.UtcNow }; context.PetitionSignatures.Add(newSignature); context.SaveChanges(); } }
public ActionResult SignatureIndex(PetitionSignatureModel model, int id) { PetitionSignature petitionSignature = new PetitionSignature(); petitionSignature.SignAdd = model.SignAdd; petitionSignature.SignCity = model.SignCity; petitionSignature.SignCountry = model.SignCountry; petitionSignature.SignEmail = model.SignEmail; petitionSignature.SignFirstName = model.SignFirstName; petitionSignature.SignId = model.SignId; petitionSignature.SignLastName = model.SignLastName; petitionSignature.SignState = model.SignState; petitionSignature.SignWord = model.SignWord; petitionSignature.PetitionId = id; Db.PetitionSignatures.Add(petitionSignature); Db.SaveChanges(); return(RedirectToAction("SignatureIndex")); }