【发布时间】:2014-01-30 13:11:48
【问题描述】:
我一直在关注这个Example 来实现 LazyLoading,用一些值初始化lazyObject 我在 Lambda 表达式的帮助下调用函数。 但是,我收到转换错误,它说它不是委托。下面是代码:
private Lazy<t_user_audit> lazyList = null;
lazyList = new Lazy<t_user_audit>(() => new t_user_audit { client.GetAudit(10) });
我已经在谷歌上搜索了这个错误,但它似乎没有帮助,而且我在我的生活中第一次看到这个错误,所以我可能需要正确语法的编码帮助。那么现在有人可以帮助我吗?
public t_user_audit GetAudit(int id)
{
return _work.GetGenericRepositoryFor<t_user_audit>().SingleOrDefault(p => p.CustomerId == id);
}
现在,如您所见,我正在使用分层架构,因此我无法发布整个代码以及我正在使用的另一件事 Entity Framework.
之后,使用上面的行,我得到两个错误:
错误 17 无法将 lambda 表达式转换为类型“bool”,因为它不是委托类型
第二个是:
错误 18 无法使用集合初始化程序初始化类型“BBTI.Entities.t_user_audit”,因为它没有实现“System.Collections.IEnumerable”
【问题讨论】:
-
GetAudit返回什么? -
您是否向我们提供了我们需要的所有信息? client.GetAudit(Int) 返回什么?
-
它会返回一个带有单条记录的对象...
-
@HarshSharma,请发布方法签名
-
它返回一个对象或一个列表
?