Я создаю приложение для бритвенных страниц, которому необходимо заполнить данные в раскрывающемся списке выбора с использованием базы данных SQL.У меня возникла проблема с передачей данных в IEnumerable из базы данных.Как мне передать эти данные.У меня есть доступ к модели данных, но я не уверен, как передать ее в IEnumerable.
Я просмотрел много статей о заполнении данных из базы данных, но все они требуют использования EntityFrameworkCore, и это не то, что мы используем на работе.
Login.cshtml.cs: модель, которая должна получать данные из базы данных
public class LoginModel : PageModel
{
public string UserName { get; set; }
public IEnumerable<SelectListItem> Users { get; set; }
public void OnGet()
{
}
Login.cshtml: представление, отображающее выпадающий список
<div class="container">
<h1>Login</h1>
<div class="form-group">
@Html.LabelFor(x => Model.UserName, htmlAttributes: new { @class = "control-label col-md-2" })
<div class="col-md-5">
@Html.DropDownListFor(x => Model.UserName, new SelectList(Model.Users, "Value", "Text"), htmlAttributes: new { @class = "form-control", id = "Users" })
</div>
</div>
</div>
QueryProvider.cs: доступ к данным осуществляется с сервера SQL здесь
public static IEnumerable<PartyWithRole> UserWithRoleList()
{
using (SqlConnection dbConn = new SqlConnection(connStr))
{
return dbConn.Query<PartyWithRole>("dbo.api_UserWithRoleList", commandType: CommandType.StoredProcedure);
}
}
Я ожидаю, что раскрывающийся список html выберите значения, возвращаемые запросом к базе данных, возвращенным UserWithRoleList (), в файле QueryProvider.cs.Я не знаю, как передать значение из UserWithRoleList () в QueryProvider.cs для IEnumerable пользователей в Login.cshtml.cs.Любая помощь будет высоко ценится.