因此,我在Razor页面上创建了一个HTML表,如下所示。基本上,我只是调用一个返回列表的方法,然后使用foreach来创建行和控件。我完全迷失的部分是如何将这些数据发布回服务器,以及如何使用该数据插入回SQL Server的代码。我正在使用Dapper,并且希望表的每一行代表一个数据行或一个对象,但是如何从Razor页面中获取作为类列表返回的数据呢?不确定我的术语在这里是否正确,但是您可以对类型列表进行绑定建模吗?希望得到一些帮助,谢谢!
似乎我走得太远了(或者很少人使用asp.net core和Dapper),所以我没有得到任何帮助。但是有人非常乐于助人地写下我的问题,没有发表评论-非常感谢。
我意识到我做错的关键是试图规避模型绑定,所以我创建了一个类/类型Rating,它表示每一行(每列作为属性),然后创建一个评估类型/类,其中包含一个List属性。
在剃刀页面上:
@foreach (Comp c in Model.GetComps())
{
count++;
Model.assessment.Ratings.Add(new Rating());
Model.assessment.Ratings[count].AchievedCompetencyID = c.AchievedCompetencyID;
后面的代码:
public void OnPost()
{
using (IDbConnection con = new SqlConnection(Startup.conStr))
{
long assessID = con.Insert(assessment);
foreach (Rating r in assessment.Ratings)
{
r.AssessmentID = Convert.ToInt32(assessID);
con.Insert(r);
}
}
}