在我的案例中,如何使用Linq-to-Sql查询来显示数据

本文关键字:查询 Linq-to-Sql 显示 数据 何使用 我的 案例 | 更新日期: 2023-09-27 17:58:43

我在用Linq编写查询时遇到了麻烦,我可以更好地解释我的情况,我有一个包含2个表的数据库,如下所示:

它是第一张桌子;

  • 酒店

  • HotelID(Nvarchar(10)-PK)

  • 酒店名称(Nvarchar(200))

这是第二张桌子;

  • 周期

  • 周期ID(国际(inc)-PK)

  • _从(日期时间)
  • _收件人(日期时间)
  • HotelID(Nvarchar(10)-FK)

则在第二个表(周期)中存在用于连接这两个表的FK(HotelID);有时我有一个HotelName,它有更多的句点(PeriodID),所以我的目的是在DataGrid中只显示一行中的数据,我给你看一个例子,因为如果同一HotelName中有更多的句号,我想在我的DataGrid中显示数据:

|HotelName|From|To|From(2)|To(2)| From(3)|To


|Excelsior | 2010年5月12日| 10年6月3日| 2010年8月2日| 9月9日| 10月23日| 10日10月1日| 11月2日|12/12/12|

所以我想问你,对于如何使用Linq-to-Sql在一行内的DataGrid中显示数据,你有什么想法/建议吗?

非常感谢您的关注。

祝你玩得愉快。

干杯

在我的案例中,如何使用Linq-to-Sql查询来显示数据

本文解释了使用分层数据绑定:http://msdn.microsoft.com/en-us/library/aa478959.aspx

然后,创建一个大致映射到数据库表的对象模型:

Hotel
 - ID
 - Name
 - Bookings
  - Booking 1 { From, To }
  - Booking 2 { From, To }
  - Booking n { From, To }

你的Linq应该是这样的:

var hotels = _db.Hotel.Select();
foreach(var hotel in hotels)
    hotel.Bookings = _db.Period.Where(x => x.HotelId == hotel.HotelId).Select();