我在使用Linq编写查询时遇到问题我更好地解释了我的情况,我有一个包含2个表的数据库如下:
这是第一张表;
酒店
HotelID(Nvarchar(10) - PK)
这是第二个表格;
期间
PeriodID(Int(inc) - PK)
然后在第二个表(Period)中有FK(HotelID)来连接2个表; 发生的某个时候我有一个获得更多句点的PeriodName(PeriodID)所以我的目的是将数据显示在DataGrid中只有一行,我给你一个例子,因为我想在我的DataGrid中显示数据,如果有更多句点同一酒店名称:
|酒店名称|来自|到|从(2)|至(2)|从(3)|至(3)|从式(4)|至(4)|
| Excelsior | 12/5/10 | 3/6/10 | 2/8/10 | 9/9/10 | 23/9/10 | 10年1月10日| 11年2月11日| 1/12/10 |
所以我想问你对如何使用Linq To Sql在一行内的DataGrid中显示数据有任何想法/建议吗?
非常感谢你的关注。玩得开心。
干杯
答案 0 :(得分:2)
本文介绍如何使用分层数据绑定: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();