将 ASP.NET Core razor 页面中的下拉列表绑定到 ado.net 存储过程
Binding a dropdown in ASP.NET Core razor page to ado.net stored procedure
我目前正在学习 ASP.NET 核心 Razor 页面,希望得到一些帮助。
我想创建一个包含存储过程结果的下拉列表。 SP 将带回两列:ID 列和名称列。
我希望用户能够从下拉列表中选择一个名称用于搜索目的,但这可以等待。
我在使用 EF Core 之前设法做到了,但是现在我正在使用 ADO.NET 和我的 owm SP,我没有问题。
到目前为止我尝试过的是:
型号
public List<SelectListItem> ProjectList { get; set; }`
下面是我试图用来从不同的 class 调用方法以获取下拉列表数据的方法`
public IEnumerable<Projects> ProjectList()
{
projects = objProject.GetAllProjects().ToList();
return projects;
}
然后我正在考虑使用 HTML 标签助手在前端创建下拉列表,但是我无法确定如何对其进行排序。
我确实认为使用 IEnumerable 是不对的,我应该使用 IActionResult
。
如果有任何建议甚至提示,我将不胜感激
谢谢
要在 Asp.net 个核心剃须刀页面中填充下拉列表,您可以在页面中使用 select
标签助手,如下所示:
<select name="Id" asp-items="Model.ProjectList"></select>
然后在 PageModel
public List<SelectListItem> ProjectList { get; set; }
public void OnGet()
{
ProjectList = GetProjectList().Select(p => new SelectListItem
{
Value=p.Id.ToString(),
Text=p.Name
}).ToList();
}
public IEnumerable<Projects> GetProjectList()
{
var projects = objProject.GetAllProjects().ToList();
return projects;
}
参考:https://www.learnrazorpages.com/razor-pages/forms/select-lists
我目前正在学习 ASP.NET 核心 Razor 页面,希望得到一些帮助。
我想创建一个包含存储过程结果的下拉列表。 SP 将带回两列:ID 列和名称列。
我希望用户能够从下拉列表中选择一个名称用于搜索目的,但这可以等待。
我在使用 EF Core 之前设法做到了,但是现在我正在使用 ADO.NET 和我的 owm SP,我没有问题。
到目前为止我尝试过的是:
型号
public List<SelectListItem> ProjectList { get; set; }`
下面是我试图用来从不同的 class 调用方法以获取下拉列表数据的方法`
public IEnumerable<Projects> ProjectList()
{
projects = objProject.GetAllProjects().ToList();
return projects;
}
然后我正在考虑使用 HTML 标签助手在前端创建下拉列表,但是我无法确定如何对其进行排序。
我确实认为使用 IEnumerable 是不对的,我应该使用 IActionResult
。
如果有任何建议甚至提示,我将不胜感激
谢谢
要在 Asp.net 个核心剃须刀页面中填充下拉列表,您可以在页面中使用 select
标签助手,如下所示:
<select name="Id" asp-items="Model.ProjectList"></select>
然后在 PageModel
public List<SelectListItem> ProjectList { get; set; }
public void OnGet()
{
ProjectList = GetProjectList().Select(p => new SelectListItem
{
Value=p.Id.ToString(),
Text=p.Name
}).ToList();
}
public IEnumerable<Projects> GetProjectList()
{
var projects = objProject.GetAllProjects().ToList();
return projects;
}
参考:https://www.learnrazorpages.com/razor-pages/forms/select-lists