【发布时间】:2014-12-02 11:58:59
【问题描述】:
我正在处理一个复杂的linq 查询,如下所示,它在运行时引发System.NullReferenceException。不幸的是,visual studio 没有提供任何其他信息,我无法对值执行QuickWatch 来检查哪个为空。有没有办法调试这种查询,以便我可以看到问题所在?
var dataSource = (from c in session.Query<PortChannel>()
select
new PortChannelData
{
Location = c.Port.MagazineSlot.SiteMagazine.Site.SiteName,
MagazineName =
String.Format("{0}-{1}", c.Port.MagazineSlot.SiteMagazine.MagazineType.MagazineName,
c.Port.MagazineSlot.SiteMagazine.MagazineNo),
SlotNo = c.Port.MagazineSlot.SlotNo,
PortNo = c.Port.PortNo,
Klm = c.Klm,
StmNo = c.StmNo,
Label = c.SiteName == null ? null : String.Format("{0}_{1}", c.SiteName, c.E1No),
ChannelFullName = c.ChannelFullName,
BscRncPort = c.BscRncPort,
MgwPort = c.MgwPort,
ReservedBy = c.ReservedBy,
CrossFullName = c.CrossConnection == null ? null : c.CrossConnection.ChannelFullName
}).ToList();
}
【问题讨论】:
-
你试过LINQPad吗?
-
@Luca 不,我会看看谢谢!
-
这个 LINQ 查询几乎没有任何复杂之处
标签: c# linq debugging visual-studio-2013