【发布时间】:2021-02-20 10:12:44
【问题描述】:
我需要帮助来制作部分视图。我创建了一个局部视图,我想更改其中的模型。另外,我希望我的局部视图由控制器控制。
我不明白为什么不行。
这是视图的标记:
<select asp-for="Categorie" id="categorie">
<script>
$('#categorie').load('/Home/BudgetSearch');
</script>
</select>
这是我的控制器:
public IActionResult BudgetSearch()
{
//var bdd = new ComptesBudgetViewModel();
var query = _context.Budget.Select(oa => oa.Categorie).Distinct();
return PartialView("BudgetSearch", query.ToList());
}
这是我部分视图的代码:
@model Comptes.core.data.Models.Budget
<option value="" selected>Choisir</option>
@foreach (var budget in Model.Categorie)
{
<option value="@budget">@budget</option>
}
有人可以帮我解决这个问题吗?
【问题讨论】:
-
您不太清楚自己是使用完整的经典 ASP.NET MVC(在完整的 .NET Framework 上)还是新的跨平台ASP.NET Core(以及上面的 MVC 堆栈)。请准确准确地告诉我们您使用的是什么!
-
我用的是ASP.NET,最后一个:不是.net core也不是.net framework
-
.NET Framework 上的 ASP.NET is - “完整”的经典 .NET(最高 v4.8) - 删除了
asp.net-core标签 -
局部视图所需的模型不是列表,而是
Budget,所以这个PartialView("BudgetSearch", query.ToList())会在运行时导致异常。如果您希望它是Budget的列表,则应将模型更改为@model IList<Comptes.core.data.Models.Budget> -
这是一件好事,但我之前有一个问题。控制器不会重定向到局部视图。
标签: c# asp.net-mvc asp.net-mvc-partialview