1

我犯了一个大错误,现在我必须找到解决方案。这是我第一个使用 fluent nhibernate 的项目,我以这种方式映射了一个对象:

public PosteCandidateMap()
    {
        Id(x => x.Id);
        Map(x => x.Candidate);
        Map(x => x.Status);
        Map(x => x.Poste);
        Map(x => x.MatchPossibility);
        Map(x => x.ModificationDate);
    }

所以整个 Poste 对象都在数据库中,但我只需要 PosteId。现在我必须找到一个 Poste 的所有候选人,所以当我查看我的存储库时,我有:

return GetAll().Where(x => x.Poste.Id == id).ToList();

但这非常慢,因为它加载了所有项目,我们现在在表中有 1500 多个项目,起初项目不应该那么大(也不是很大的薪水)。现在我正在尝试使用标准 ou Linq 来执行此操作,但由于我的 Poste 位于 BLOB 中,因此它不起作用。

无论如何我可以很容易地改变这个吗?

非常感谢您的帮助!

4

1 回答 1

0

好的,所以我所做的是创建一个新的对象/表/存储库,对我的旧数据做了一点 foreach,在新对象中解析它,女巫只包含 Id,将它保存到 BD,而不是将我的所有 oldReposotory 更改为我的新存储库和工作完成了!

希望能帮助到你!

于 2010-04-28T01:12:03.423 回答