2

如果我做

Session.Linq<MyClass>().Where(x => x.Id = someId).FirstOrDefault();

其中MyClass有一组急切加载的子对象,似乎通过向SQLFirstOrDefault()添加 a 来阻止它工作。TOP 1

这只是 Linq2NH 中的一个错误(功能?)(我知道正在重写)还是我错过了什么?

是否有一个可以正常工作的首选替代方案?

谢谢

4

1 回答 1

3

看起来像一个错误,在我看来,FirstOrDefault 是一个定义良好的 Linq 运算符,它与急切/延迟加载无关,所以它不应该破坏它。

我想有很多这样的细微差别,这导致库没有准备好生产。我建议将错误提交给开发人员。

在这种情况下,回退到 DetachedCriteria(或 HQL)是我认为的唯一选择。

于 2009-05-18T22:15:52.810 回答