我正在使用带有EF核心的ASP.NET核心。
如果我对同一个Controller方法发出多个请求,则会抛出一些请求:Object reference not set to an instance of an object
,但没有详细说明。但是,如果我向该控制器发出一个请求,则不会发生异常。
这里我重建了现有系统的示例
public class Player
{
public int Id { get; set; }
public string Name { get; set; }
public Team Team { get; set; }
}
public class Team
{
public int Id { get; set; }
public string Name { get; set; }
public List<Player> Players { get; set; }
}
此代码抛出异常
public async Task<List<Player>> TEST()
{
using (Repository.DataProvider.RepoDbContext db = new Repository.DataProvider.RepoDbContext())
{
return await db.Players.Include(x => x.Team).Where(x => x.Team.Id == 1).ToListAsync();
}
}
我进行了一些研究并意识到只有在使用相同属性(在这种情况下为Include
)与where
和Team
语句组合时才会发生此异常。如果我删除include
或where
,一切正常。
这是某种错误还是我做错了什么?