Я хотел бы разработать ViewComponent с выпадающим списком, который принимает список данных, передаваемых извне.
Этот список может быть списком пользователей, списком чисел, ...
Это мой ViewComponent - Code.cs
[ViewComponent(Name = "ddlNew")]
public class ddlNewViewComponent : ViewComponent
{
public ddlNewViewComponent()
{
}
public async Task<IViewComponentResult> InvokeAsync(string labelText, string nameDDL, string fieldKeyName, string fieldDescName )
{
List<SelectListItem> list = new List<SelectListItem>() {
new SelectListItem {Text = "Text1", Value = "1" },
new SelectListItem {Text = "Text2", Value = "2" },
};
ViewBag.LabelText = labelText;
ViewBag.NameDDL = nameDDL;
ViewData[nameDDL] = list;
return View("Default");
}
}
Код .cshtml
@{
string nameDDL = ViewBag.NameDDL;
}
<div>
@if ((ViewBag.LabelText != null) || (ViewBag.LabelText != ""))
{
<h4>@ViewBag.LabelText</h4>
}
@Html.CheckBox("Testo CheckBox", true)
@Html.DropDownList(nameDDL, (IEnumerable<SelectListItem>)ViewData[nameDDL], "--Scegli--")
</div>
Позвонить на страницу
@await Component.InvokeAsync("ddlNew", new { labelText = "Hello", nameDDL = "pippoDDL", fieldKeyName = "idPippo", fieldDescName = "descName" })
Как передать все типыданные?Я не понял, как создать общий список, который подходит для выпадающего списка