我认为这有点复杂,我会尽力解释。
我有以下表格;
时间表
idTimesheet
id_User
结束日期
提交
批准
了LineItem
idLineItem
id_Timesheet
描述
天
idDay
id_LineItem
日期
小时
因此,正如您所看到的,这是一个Timesheeting系统。 我已经让自己能够单独显示每个订单项,问题是如何在相关列中显示每天的小时数。
我使用Timesheets.EndDate
动态生成GridView中的Day
列,以便他们也可以在每列中包含日期,但我不知道如何如何将日/小时绑定到相关列。它们是DataGridTextColumns,因为最终目标是允许用户输入自己的小时进入系统。我使用EntityFramework,因此可以使用提供LineItem.Ref_Days
的{{1}}来获取Days,但是可以在LINQ的帮助下轻松地将其转换为List或其他有用的对象。 / p>
如有必要,很乐意提供更多信息。
答案 0 :(得分:1)
如何在相关列中显示每天的小时数。
不要尝试使用直接实体并绑定到不会暴露所需内容的属性。创建数据传输对象(DTO)对象,其中包含业务逻辑(以及构成逻辑的所有模型),表示为从原始属性中提取的属性,或通过部分类定义从EF扩展实体。放入智能来更新创建的新属性的setter中的实际属性。
无论哪种方式,您只需将列绑定到实际扩展实体或DTO上的新属性。