【发布时间】:2014-06-24 00:06:05
【问题描述】:
我对实体有以下 linq:
var dbShifts = DbContext.Set < SetupShift > ()
.AsNoTracking()
.Where(s => s.ShiftCode == shiftCode).ToList();
Entity SetupShift 具有以下属性:
public class SetupShift
{
public int ShiftId { get; set; }
public string ShiftCode { get; set; }
public byte Day { get; set; }
public TimeSpan InTime { get; set; }
public TimeSpan OutTime { get; set; }
public int WorkHours { get; set; }
public TimeSpan LunchOut { get; set; }
public TimeSpan LunchIn { get; set; }
public bool IsActive { get; set; }
public string CategoryType { get; set; }
}
现在,我需要将其包装到自定义模型 ShiftModel:
public class ShiftModel
{
public int ShiftId { get; set; }
public string ShiftCode { get; set; }
public byte Day { get; set; }
public string DayName { get; set; }
public string InTime { get; set; }
public string OutTime { get; set; }
public int WorkHours { get; set; }
public string LunchOut { get; set; }
public string LunchIn { get; set; }
public bool IsActive { get; set; }
public string CategoryType { get; set; }
}
EF 实体模型和我的ShiftModel之间的唯一区别是TimeSpan属性在自定义模型中是String。
我想知道是否有一种快速的方法可以从我的实体数据生成我的 ShiftModel,而不是循环每个实体:
List<ShiftModel> shifts = new List<ShiftModel>();
foreach(var entity in SetupShift){
....
newShiftModel = new ShiftModel();
newShiftModel.InTime = new TimeSpan(0, 0, 0).ToString(@"hh\:mm");
....
....
shifts.Add(newShiftModel);
}
【问题讨论】:
标签: entity-framework entity-framework-4 linq-to-entities linq-to-objects