簡體   English   中英

如何綁定列表<model>在 ASP.NET Core MVC 中創建視圖</model>

[英]how to bind List<model> to create view in ASP.NET Core MVC

我正在嘗試創建一個表格來收集學生的資格。 首先,列表應包含 4 個對象,用於四種不同的資格。 創建視圖的片段

@for (var i = 0; i < 4; i++)
{
          <div class="col-md-3 me-2">
              <label asp-for="@Model[i].Institute" class="control-label col-md"></label>
              <input asp-for="@Model[i].Institute" class="form-control" />
              <span asp-validation-for="@Model[i].Institute" class="text-danger"></span>
          </div>

          <div class="col-md-3 me-2">
              <label asp-for="@Model[i].YearGraduated" class="control-label"></label>
              <input asp-for="@Model[i].YearGraduated" class="form-control" />
              <span asp-validation-for="@Model[i].YearGraduated" class="text-danger"></span>
          </div>
}

<div class="form-group d-flex-row m-auto mt-2">
    <input type="submit" name="submit" value="Save and Continue"/>
</div>

這是我的 controller:

public IActionResult Create()
{
    var model = new List<Qualification>();
    model = _context.Qualifications.ToList();
    return View(model);
}

這是 model class:

public partial class Qualification
{
    public Qualification()
    {
        Subjects = new HashSet<Subject>();
    }
    
    public int Id { get; set; }
    public int StudentId { get; set; }
    public string Institute { get; set; } = null!;
    public short YearGraduated { get; set; }
    public virtual Student Student { get; set; } = null!;

    public virtual ICollection<Subject> Subjects { get; set;
}

我的問題是當我運行代碼時,沒有生成任何東西,也沒有任何錯誤。

誰能幫忙?

在這里,您的代碼中缺少。

@model List<Qualification>  // declare on top of the file
    @if(Model !=null){
        for (var i = 0; i < Model.Count; i++)
        {
                  <div class="col-md-3 me-2">
          <label asp-for="@Model[i].Institute" class="control-label col-md"></label>
          <input asp-for="@Model[i].Institute" class="form-control" />
          <span asp-validation-for="@Model[i].Institute" class="text-danger"></span>
      </div>

      <div class="col-md-3 me-2">
          <label asp-for="@Model[i].YearGraduated" class="control-label"></label>
          <input asp-for="@Model[i].YearGraduated" class="form-control" />
          <span asp-validation-for="@Model[i].YearGraduated" class="text-danger"></span>
      </div>
        }
    }

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM