Avatar ·

Entity Framework 中的“已打开与此命令关联的 DataReader”错误

大家好!我是 C# 和 Entity Framework 的新手。我正在编写一个简单的在线商店应用程序,遇到了一个非常奇怪的错误。我有一个方法可以获取用户的订单列表,并为每个订单输出商品信息。 这是我的代码: ```csharp using (var context = new MyDbContext()) { var orders = context.Orders.Where(o => o.UserId == userId).ToList(); foreach (var order in orders) { Console.WriteLine($"订单 #{order.Id}"); // 尝试获取每个订单的商品 var products = context.Products .Where(p => p.OrderId == order.Id) .ToList(); foreach (var product in products) { Console.WriteLine($" - {product.Name}: {product.Price} 卢布"); } } } ``` 在 `var products = context.Products...` 这一行,我遇到了错误: > “已存在与此命令关联的打开的 DataReader,必须关闭它”