这是我的员工对象
public class Employee : BaseEntity
{
public Employee()
{
this.HistoryOfStatuses = new List<Checkinout>();
}
public string Name { get; set; }
public string Department { get; set; }
public string CardNumber { get; set; }
public string Status { get; set; }
public Checkinout ActualCheckinStatuse { get; set; }
public List<Checkinout> HistoryOfStatuses { get; set; }
public int UserId { get; internal set; }
//test
}
}
这是我的控制器
HistoryOfStatuses = (from checkinout in context.Checkinout
join status in context.Status on checkinout.CheckType equals status.Statusid
where checkinout.Userid == userinfo.Userid
orderby checkinout.CheckTime descending
select new Checkinout
{
CheckStatus = status.StatusText,
CheckTime = checkinout.CheckTime
}).ToList()
这是我的Checkinout类
public class Checkinout: BaseEntity
{
public Checkinout() {
}
public int EmployeeId { get; set; }
public string CheckStatus { get; set; }
public DateTime CheckTime { get; set; }
public Employee EmployeeObject { get; set; }
}
这是我的观点,我不能使用CheckStatus或CheckTime
答案 0 :(得分:1)
HistoryOfStatuses
是List
,没有属性CheckStatus
。
在使用CheckStatus
属性之前,您需要从列表中选择一项。
类似
item.HistoryOfStatuses[0].CheckStatus
那是假设您想要列表中的第一条记录,而这可能并不是您想要的。但关键是您需要从列表中选择一项或在列表中循环。
答案 1 :(得分:1)
据我所知,您的HistoryOfStatuses是一个列表,因此您不应该调用该列表的属性,您应该首先对列表进行迭代,然后访问当前迭代对象的属性。
因此,您可能需要执行一个foreach循环。例如:
@foreach(var history in item.HistoryOfStatuses){
<h1>@history.CheckStatus</h1>
}