2 кнопки в поле зрения для установки свойства модели в зависимости от btn mvc5
У меня есть 2 кнопки, но я не могу привести свою модель на страницу и нажать кнопку, чтобы определить, как установить мою модель. Я думаю, что если я смогу получить свою модель на своей странице, то, возможно, смогу понять эти кнопки. Я попытался привести модель как обычно new { model = Model}, но моя модель все еще равна нулю… Вот мой код
// GET: TimeSheet/AdminApproval{masterid} public ActionResult AdminApproval(int masterId) { var masterModel = context.TimeSheetMaster.Where(w => w.TimeSheetMasterId.Equals(masterId)).FirstOrDefault(); var detailM = context.TimeSheetDetails.Where(t => t.TimeSheetMasterId.Equals( masterModel.TimeSheetMasterId)).FirstOrDefault(); var project = context.Projects.Where(p => p.ProjectId == detailM.ProjectId).FirstOrDefault(); var details = (from master in context.TimeSheetMaster join detail in context.TimeSheetDetails on master.TimeSheetMasterId equals detail.TimeSheetMasterId where master.TimeSheetMasterId == masterId select new TimeSheetDetailsModel() { Sunday = detail.Sunday, Monday = detail.Monday, Tuesday = detail.Tuesday, Wednesday = detail.Wednesday, Thursday = detail.Thursday, Friday = detail.Friday, Saturday = detail.Saturday, Hours = detail.Hours, Comment = master.Comment, ProjectName = project.ProjectName }).FirstOrDefault(); return View(details); } //POST: TimeSheet/AdminApproval{model}{approve}{reject} [HttpPost] [ValidateAntiForgeryToken] public async Task<ActionResult> AdminApproval(TimeSheetDetailsModel model, string btnApprove, string btnReject) { var master = await context.TimeSheetMaster.Where(m => m.TimeSheetMasterId == model.TimeSheetMasterId).FirstOrDefaultAsync(); if(btnApprove != null) { return RedirectToAction("TimeSheetList"); } else if(btnReject != null) { return RedirectToAction("Index", "Home"); } else { } return View(); } <div class="panel-footer"> @using (Html.BeginForm("AdminApproval", "TimeSheet", new { model = Model }, FormMethod.Post)) { @Html.AntiForgeryToken() <input type="submit" class="btn btn-success" value="Approve" name="btnApprove" /> <input type="submit" class="btn btn-danger" value="Reject" name="btnReject" /> }
Что я уже пробовал:
Tons of ways I tried but NO luck... even tried the commenting ways. Getting mmy Model in httppost [HttpPost] public ActionResult AdminApproval(TimeSheetDetailsModel model) { var master = context.TimeSheetMaster.Where(m => m.TimeSheetMasterId == model.TimeSheetMasterId).FirstOrDefaultAsync(); return RedirectToAction("TimeSheetList"); } public ActionResult ApproveTimeSheet(TimeSheetDetailsModel model) //([Bind(Include ="TimeSheetMasterId,UserId")]TimeSheetDetailsModel model) { return RedirectToAction("TimeSheetList"); } [HttpPost] public ActionResult RejectTimeSheet([Bind(Include = "TimeSheetMasterId,UserId")]TimeSheetDetailsModel model) { return RedirectToAction("Index", "Home"); } //POST: TimeSheet/AdminApproval{model}{approve}{reject}//[ValidateAntiForgeryToken] /*[HttpPost] public async Task<ActionResult> AdminApproval(int id, TimeSheetDetailsModel model ) // ,string btnApprove, string btnReject) //{ var master = await context.TimeSheetMaster.Where(m => m.TimeSheetMasterId == model.TimeSheetMasterId).FirstOrDefaultAsync(); //if (btnApprove != null) //{ return RedirectToAction("TimeSheetList"); //} @using (Html.BeginForm()) { <input type="submit" value="Approve" name="TimeStat" /> } @*using (Html.BeginForm()) {*@ @*@Html.AntiForgeryToken()*@ <input type="submit" class="btn btn-success" value="Approve" name="btnTime" formaction="@Url.Action("RejectTimeSheet")" formmethod="post" /> <input type="submit" class="btn btn-danger" value="Reject" name="btnTime" formaction="@Url.Action("ApproveTimeSheet")" formmethod="post" /> @* } *@ @*@Html.ActionLink("Approve2", "AdminApproval", new { model = Model }, new { @class = "btn btn-success" })*@ @*@Html.ActionLink("Reject", "", null, new { @class = "btn btn-danger" })*@ @Html.ActionLink("App", "ApproveTimeSheet", new { model = Model }) @Html.ActionLink("Rej", "RejectTimeSheet", new { model = Model.TimeSheetMasterId }) <a href="@Url.Action("ApproveTimeSheet", "TimeSheet", new { model = Model })">hrefApp</a>
Maciej Los
Извините, но ваш вопрос не совсем ясен, особенно этот: "У меня есть 2 кнопки, но я не могу привести свою модель на страницу и нажать кнопку, чтобы определить, как установить мою модель- Я понятия не имею, о чем ты говоришь...
Можете ли вы быть более конкретным и предоставить более подробную информацию о вашей проблеме?