我有剃刀页。 我在处理程序中准备了(visitorTypes)列表 我只想束缚他们。我错过了一些东西,但是我不知道什么
这是我的C#代码
[ModelBinder(Name ="Visitors")]
public ICollection<VisitorType> VisitorTypes { get; set; }
public IActionResult OnGetListOfVisitorTypeAsync()
{
VisitorTypes = _db.VisitorTypes.ToList();
return RedirectToPagePermanent("/Visitors",VisitorTypes);
}
这是我的剃须刀页面
<div class="container">
<form method="get" asp-page-handler="ListOfVisitorType" >
@foreach (var item in Model.VisitorTypes)
{
<label>@item.VisitorTypeName.ToString() </label>
}
</form>
</div>
有人可以解释我做错了什么吗 (我试图返回列表,我试图使其成为一个void方法,但是它们都不适合我)
这是模态
private string _VisitorTypeName { get; set; }
public string VisitorTypeName { get {return _VisitorTypeName; } set { _VisitorTypeName = value; } }
ICollection<Visitor> Visitors { get; set; }
答案 0 :(得分:0)
如果在加载视图时生成数据,该怎么办?
public IActionResult Visitors()
{
VisitorTypes = _db.VisitorTypes.ToList();
return View(VisitorTypes);
}
答案 1 :(得分:0)
您可能通过“ @model?”传递了错误的模型。在剃须刀页面中。
答案 2 :(得分:-1)
首先,在访问List(VisitorTypes)之前,必须在razorview本身中声明并初始化其值
@{
List<VisitorTypes> listVisitorTypes = _db.VisitorTypes.ToList();
}
并最终呈现列表:
@foreach(listVisitorTypes中的var项) { @ item.VisitorTypeName.ToString() }