Popola RadioButtonList dalla tabella del database in asp.net mvc
Voglio creare una forma come sopra,
anche avere a popolare visualizzatore gruppi di utenti accodrding a UserGroups tavolo
public partial class UserGroup
{
public string UserGroup_ID { get; set; }
public string UserGroupNameEn { get; set; }
}
Quindi popolare questi gruppi di utenti e ottieni i dati pieni Ho creato un nuovo modello (quindi può essere applicato alla vista (1a immagine))
ho seguito tesi Stack Overflow question 1 e question 2 per rendere questo
questo è classe controller per questo
[HttpGet]
public ActionResult ProductFields_Create()
{
var model = new ProductFields
{
LisGroups = GetUserGroupListEn()
};
return View(model);
}
public MultiSelectList GetUserGroupListEn()
{
return new MultiSelectList(db.UserGroup.ToList(), "UserGroup_ID", "UserGroupNameEn");
}
[HttpPost]
[ValidateAntiForgeryToken]
public ActionResult ProductFields_Create(ProductFields product_fields)
{
...........
}
questo è classe modello per prima immagine
public class ProductFields
{
public string ProductFieldID { get; set; }
public string ProductFieldNameEn { get; set; }
public string ProductFieldNameAr { get; set; }
public string ProdcutFieldDiscriptionEn { get; set; }
public string ProductFieldDiscriptionAr { get; set; }
public List<UserGroup> LisGroups { get; set; }
[Required]
public string SelectedGroupID { get; set; }
}
ViewPage per sopra vista
@model Project_Name.Models.ProductFields
@using (Html.BeginForm())
{
<fieldset>
<div class="form-horizontal">
@Html.ValidationSummary(true, "", new { @class = "text-danger" })
.....
<div class="form-group">
<div>
@Html.ValidationMessageFor(x => x.SelectedGroupID)
foreach (var group in Model.LisGroups)
{
<div>
@Html.RadioButtonFor(x => x.SelectedGroupID, group.UserGroup_ID, new { id = "emp" + group.UserGroup_ID })
@Html.Label("emp" + group.UserGroup_ID, employee.Label)
</div>
}
</div>
</div>
<div class="form-group">
<div class="col-md-offset-2 col-md-10">
<input type="submit" value="Create" class="btn btn-default" />
</div>
</div>
</div>
</fieldset>
}
ma qui sto ottenendo grandi errori con linee ondulate rosse
Il 'gruppo' nome non esiste nel contesto corrente
Impossibile convertire implicitamente il tipo 'System.Web.Mvc.MultiSelectList' a 'System.Collections.Generic.List'
@StephenMuecke sì è, una volta che seleziono il gruppo A, dovrebbe passare Group As, ID – kez