我有两个通过外键关系链接的对象,我使用 DataModel 来映射对象:
事件:1--------*:资产
我写了一个查询来获取给定 [eventPublicId] 的所有资产
List<Asset> assetList =
ReliableExecution.RetryWithExpression<Event, List<Asset>>
(u => u.FirstOrDefault(x => x.PublicId == eventPublicId).Assets.ToList()).ToList();
我的问题是我不得不调用 ToList() 两次,这看起来很尴尬。我还必须使用 FirstOrDefault,但是当我尝试使用 [Where] 或其他任何东西时,它没有编译。
还有其他更好的方法可以重写此代码吗?
这是 RetryWithExpression 签名供参考:
public static TValue RetryWithExpression<T, TValue>(Func<ObjectSet<T>, TValue> func, Int32 retryInfiniteLoopGuard = 0)
where T : class