Minimal CodestrukturMVC5: Ansicht nicht korrekt Ansichtsmodell Absenden
Ich habe zwei Viewmodel cmsViewModel
und appointments
public partial class cmsViewModel
{
public string rows { get; set; }
public DateTime appt_date_time { get; set; }
public int appt_id { get; set; }
public List<community_meeting_schedule> lst { get; set; }
public cmsViewModel()
{
rows = null;
appt_date_time = DateTime.Today;
lst = null;
appt_id = -1;
}
}
public partial class appointments
{
public int appt_client_id { get; set; }
public int customer_id { get; set; }
[Key]
public int appt_id { get; set; }
public DateTime appt_date_time { get; set; }
public DateTime time_stamp { get; set; }
}
Die Aktionsmethode in der Steuerung wie folgt aussieht:
[HttpPost]
public ActionResult CMSConfim(cmsViewModel model, string Command)
{
return View("CMSchedule", model);
}
The View CMSConfim.cshtml
sieht wie folgt aus:
@model Scheduler_MVC.Models.cmsViewModel
@using (Html.BeginForm("CMSConfim", "appointments", FormMethod.Post))
{
@Html.HiddenFor(model => model.appt_id, new { id = "appt_id" })
@Html.HiddenFor(model => model.appt_client_id, new { id = "appt_client_id" })
@Html.HiddenFor(model => model.appt_date_time)
@Html.HiddenFor(model => model.appt_status)
@Html.HiddenFor(model => model.appt_type)
@Html.HiddenFor(model => model.lst)
<input type="submit" value="Back" id="backBtn" class="btn btn-default" />
<input type="button" value="Submit" id="submitBtn" class="btn btn-default" style="display:inline-block;" />
}
Ich möchte hinzufügen, dass ich in der Lage bin, korrekte Werte in den Anzeigefeldern auf dem Formular zu rendern. Der Fehler tritt beim Absenden des Formulars auf. Jetzt
Fehler
wenn ich senden Sie das Formular durch Back
. Ich erhalte den folgenden Fehler. Das Modell im Wörterbuch ist vom Typ 'cmsViewModel' aber erforderlich ist das vom Typ 'Termine' Bitte schlagen Sie vor, was ich falsch machen könnte.
Wie sieht dein '[HttpGet]' Controller aus? – Gareth
Vielen Dank für alle Antworten. Eigentlich lag das Problem an dem zusätzlichen 'Command'-Argument in der Aktion. Ich habe es eingeschlossen, um den Klick auf die Schaltfläche in der Ansicht zu verfolgen. Alles funktioniert gut nachdem ich das entfernt habe. Aber jetzt versuche ich herauszufinden, wie man den angeklickten Knopf verfolgt. Soll ich einen versteckten Wert vom Wert senden? –