空我有這樣的方法:值不能在LINQ條款
protected async Task<List<T>> Get<T>(Expression<Func<T, bool>> select) where T : class, IEntity
{
var query = Context.Set<T>();
query = query.Where(select);
return await query.ToListAsync<T>();
}
我這樣稱呼它:
var result = await Get<T>(a => a.Id == myId);
但Get方法不斷拋出「值不能爲空。參數:source'。
我錯過了什麼?
更新1:
StackTrace: at System.Data.Entity.Utilities.Check.NotNull[T](T value, String parameterName) at System.Data.Entity.QueryableExtensions.ToListAsync[TSource](IQueryable'1 source) at SoccerPool.MVC5.Models.Config.BaseApiController.<Get>d__49'1.MoveNext() in c:\Projects\SoccerPool\SoccerPool.MVC5\Models\Config\BaseApiController.cs:line 190
更新2:
Context.Set<T>() is not null. It contains 48 records if I don't perform the linq query. And 'Context' is a property which returns an instance of my DbContext.
您可以添加堆棧跟蹤嗎? –
你能解釋一下你如何填充'Context.Set()',因爲錯誤提示'query'爲空 –
jaywayco