【发布时间】:2012-10-18 03:45:56
【问题描述】:
我像这样在我的模型中创建了一个列表属性
public virtual List<String> listOfDays { get; set; }
然后我将其转换并存储在这样的列表中:
for (int i = 0; i < 30 i++)
{
var enrollment = new Enrollment();
enrollment.StudentID = id;
enrollment.listOfDays = searchString.ToList();
db.Enrollments.Add(enrollment);
db.SaveChanges();
}
我在这里放了一个断点...enrollment.listOfDays = searchString.ToList(); ...一切都很好。我看到转换已执行,我可以看到 listOfDays 中的值。
所以我想我会在我的数据库中找到一个名为 listOfDays 的列,因为我先编写代码但该属性不存在。
然后我想我会尝试像这样访问它......
var classdays = from e in db.Enrollments where e.StudentID == id select e.listOfDays;
var days = classdays.ToList();
//here I get an error message about this not being supported in Linq.
问题:
- 为什么您认为该属性不在数据库中?
- 如何将此数组发布到我的模型,然后在控制器中访问它?
感谢您的帮助。
感谢德克尔:http://forums.asp.net/members/Decker%20Dong%20-%20MSFT.aspx
它是这样工作的:
在这里使用表单集合...
在 [HttpPost]…
private void 更新(FormCollection formCollection, int id)
for (int sc = 0; sc
然后在[HttpGet]中……
private void PopulateAssignedenrolledData(Student student, int id) {
var dayList = from e in db.Enrollments where e.StudentID == id select e;
var days = dayList.ToList(); if (days.Count > 0) { 字符串 dl = days.FirstOrDefault().listOfDays; string[] listofdays = dl.Split(','); ViewBag.classDay = listofdays.ToList(); }
【问题讨论】:
标签: asp.net-mvc-3