gpt4 book ai didi

c# - 将 NHibernate 集合延迟加载到 ViewModel 中?

转载 作者:行者123 更新时间:2023-12-03 10:24:53 27 4
gpt4 key购买 nike

我将 NHibernate 映射设置为延迟加载 = true。
在我的 CustomersViewModel 中,我有类似的内容:

        foreach (Customer c in _customerRepository)
{
this.Customers.Add(new SingleCustomerViewModel(c));
}

这显然会杀死所有的延迟加载,因为客户是一一通过的。

如何将模型对象的集合(包括子集合和子子集合 a.s.f.)放入我的 ViewModel 的相应 ObservableCollections 以绑定(bind)到 UI?

这似乎是一个常见问题,但我没有找到答案,无论是在这里还是在谷歌...

最佳答案

我不确定我是否完全理解这个问题。
但我在想为什么不将您的 getCustomers 方法更改为

 IEnumerable<SingleCustomerViewModel> getCustomers(){
return from c in _customerRepository select SingleCustomerViewModel(c);
}

由于 LINQ 表达式是懒惰地评估的,所以在它实际绑定(bind)到 UI 之前,不会初始化 nhibernate 集合。

关于c# - 将 NHibernate 集合延迟加载到 ViewModel 中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1589226/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com