using (Html.BeginForm("Add", "Test", new { profil = Model.SelectedProfil }, FormMethod.Post))
{
@Html.DropDownListFor(m => m.SelectedProfil, new SelectList(Model.Profils.Select(x => new { Value = x, Text = x }),"Value","Text"))
<button type="submit">Add</button>
}
Profils = Liste der ZeichenfolgeDropDownListFor Razor mit Liste <string>
SelectedProfil = string
SelectedProfil ist immer null an die Steuerung über den Post
Haben Sie hinzugefügt eine benutzerdefinierte Route für diese Postaktion in der Routes-Datei? Ich sage das, weil die Route, die Sie über den Helfer verwenden (Html.BeginForm ("Add", "TestController", neues {profil = Model.SelectedProfil}) unterscheidet sich von dem standardmäßig erzeugten Standard, da der übergebene Parameter immer ist benannte "id", während hier heißt es "profil". Nur eine Idee, aber mit meiner Standard-Route-Konfiguration muss ich eine benutzerdefinierte Route hinzufügen, so dass eine solche Post-Aktion könnte funktionieren .. –
Ursprünglich mit (Html.BeginForm ("Add" , "Test", neu {bd = Model.BD, appName = Model.SelectedAppName, profil = Model.SelectedProfil}, FormMethod.Post)) Alles funktioniert außer profil Parameter ist immer Null – FrankSharp
Sein normales müssen Sie benutzerdefinierte Route hinzufügen, da TestController sollte lauten: Test – FrankSharp