nhibernate CreateSQLQuery结果为NhQueryable

时间:2014-08-29 10:43:22

标签: nhibernate

我的nHibernate中有一个现有的模型,我正在大量使用它。最近我引入了一个计算列来帮助一些性能,但是我不想在结果中使用这一列,我只想根据此列查询数据。我尝试过如下所示的内容,但是我的最后一部分“CreateSQLQuery result to NhQueryable”

数据集

|Id  |Name |Mobile     |CalculatedMobile|
|1   |Tom  |0555111222 |+44555111222    |
|2   |Bob  |0555222333 |+44555222333    |

代码

    public IEnumerable<User> GetUsers(string mobile)
    {
        var session = Config.SessionFactory.OpenSession()

        var Users = session.CreateSQLQuery("SELECT Id, Name, Mobile FROM Users U CalculatedMobile = :mobile")
            .AddEntity(typeof(User))
            .SetString("mobile", mobile);

        var result = Users.List<User>().AsQueryable();

        result = _extendedQueryProvider.AddChildEntities(result);

        return (result.ToList());
    }

    public IQueryable<RestaurantEntity> AddChildEntities(IQueryable<RestaurantEntity> users)
    {

        users = users.FetchMany(x => x.Addresses);

        return (users);
    }

所以我的代码中的问题是“users.FetchMany”无效。我有例外

There is no method 'FetchMany' on type 'NHibernate.Linq.EagerFetchingExtensionMethods' that matches the specified arguments

0 个答案:

没有答案