Crystal Report和LINQ

时间:2010-06-02 18:30:55

标签: linq crystal-reports

我正在使用Crystal Report创建报告。我有两个表,Driver_SpecificationsWatchRow

WatchRow的主键是Driver_Specifications的外键。我在报告文件中设置了一些字段以显示Driver_Specifications的数据,并且我希望显示WatchRow的特定字段,而不是Driver_Specifications的外键。 LINQ对此问题的查询是什么?

这是我到目前为止所做的:

var q = (from d in taxi_AgencyDataSet.Driver_Specifications
    orderby d.First_Name, d.ID_Driver
    select new {
        d.First_Name,
        d.Last_Name,
        d.Car_Name,
        d.Car_Color,
        d.WatchRow.Watch_Name,
        d.ID_Watch
    }).ToList();

我收到以下错误:

Object reference not set to an instance of an object

1 个答案:

答案 0 :(得分:1)

访问null时,您需要检查d.WatchRow以避免抛出NullReferenceException

var q = (from d in taxi_AgencyDataSet.Driver_Specifications
         orderby d.First_Name, d.ID_Driver
         select new
         {
             d.First_Name,
             d.Last_Name,
             d.Car_Name,
             d.Car_Color,
             Watch_Name = d.WatchRow == null ? "None" : d.WatchRow.Watch_Name,
             d.ID_Watch
         }).ToList();