gpt4 book ai didi

c# - 延迟加载不调用函数

转载 作者:行者123 更新时间:2023-11-30 14:31:02 25 4
gpt4 key购买 nike

当我调试我的应用程序时,我发现下面的代码行没有调用我的服务层中的任何方法:

private Lazy<List<userAudit>> lazyList = null;
lazyList = new Lazy<List<userAudit>>(() => client.GetAudit(10).ToList());

而且,我的 GetAudit 方法将返回审计对象列表,下面是它的定义:

public List<t_user_audit> GetAudit(int id)
{
return _work.GetGenericRepositoryFor<List<userAudit>>().GetByID(id);
}

并且,在上面的定义中,我在 GetAudit 方法中插入了一个断点,但是当编译器没有到达断点并且只是返回 NULL 时 值。

我不知道我在哪里犯了错误或者代码有什么问题。

我正在关注 Can you explain Lazy Loading文章。

最佳答案

Lazy 类的要点是,根据 documentation提供对延迟初始化的支持。

这很正常

lazyList = new Lazy<List<userAudit>>(() => client.GetAudit(10).ToList());

不调用此方法。

但是,如果您使用 Value,它将被调用属性

关于c# - 延迟加载不调用函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21474010/

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