将 SQL 到 LINQ 数据插入到输入表单中



如何将数据插入此表单域。所以我有我花哨的表单,我想将我从数据库中查询的两个值添加到其中。

网页视图:

@model CWebPortal.Models.onboard_test
    @using (Html.BeginForm("Results", "OnBoarding", FormMethod.Post))
                    {
                        <form>
 <div class="row">
  <div class="input-group input-group-icon1">
  <input type="text" placeholder="Project Name" name="projectname" value = "" required />
  <div class="input-icon"><i class="fa fa-user" style="padding-top:20px;"></i> Project Name</div>
  </div>
  <div class="input-group input-group-icon1">
  <input type="text" placeholder="Developer" name="developer" />
  <div class="input-icon"><i class="fa fa-file-text" style="padding-top:20px"></i> Developer</div>
    </div>
    </div>
    </form>
}

带有 LINQ 的控制器:

        var DataContext = new BalanceDataContext();
        var custQuery2 = (from m in DataContext.onboard_tests
                           orderby m.date_created descending
                           select m).Take(1);
        return View(custQuery2);

型:

public class Onboard
{
    [Key]
    public Guid projectID { get; set; }
    [Required]
    public string ProjectName { get; set; }
    [Required]
    public string Developer { get; set; }
    public DateTime date_created { get; set; }
}

我只想像:

<input type="text" placeholder="Project Name" name="projectname" value = "@model.projectname" required />

由于我没有这样做@Html.DisplayNameFor(model => model.projectname(方法。

谢谢你们的帮助。

而不是.Take(1)你应该使用FirstOrDefault()

说明:您的视图具有类型 CWebPortal.Models.onboard_test 的模型。但是,LINQ 运算符Take返回IQueryable<CWebPortal.Models.onboard_test>类型的查询,无论您指定 10 个实体还是 1 个实体。为了获取单个实体(如您的视图所期望的那样(,您应该执行查询并获取单个实体。最好的方法是FirstOrDefault()方法。

最新更新