Lỗi khi lấy dữ liệu từ linq nhiều lần: There is already an open DataReader associated with this Command which must be closed first. Khi mình lấy dữ liệu xử lý add thì bị lỗi dữ liệu như trên, mình không biết làm sao để xử lý nếu không vượt qua được lỗi này. Bạn nào biết cách xử lý giúp mình với: Code của mình: Mã: var modelcate = dbc.Categories.Where(p=> p.Id == null); //danh sách chuyên mục liên kết foreach (var cate in dbc.Categories.Where(s => s.Action).OrderByDescending(p => p.Seq)) { var itemName = ""; itemName = modelcate.Where(c => c.Type == cate.Type).FirstOrDefault().Name; //error tại đây ....... }
Của bạn không phải lỗi mà do bạn truy xuất dữ liệu không đúng cách thôi. Bạn xử lý lại code bằng cách truy xuất lấy dữ liệu dạng ToList() là được ngay. Sửa lại code như sau: Mã: var modelcate = dbc.Categories.Where(p=> p.Id == null); //danh sách chuyên mục liên kết foreach (var cate in dbc.Categories.Where(s => s.Action).OrderByDescending(p => p.Seq).ToList()) { var itemName = ""; itemName = modelcate.Where(c => c.Type == cate.Type).FirstOrDefault().Name; //error tại đây ....... }