Tôi đang làm việc với C # và .NET Framework 4.5.1 truy xuất dữ liệu từ cơ sở dữ liệu SQL Server với Entity Framework 6.1.3.
Tôi có cái này:
codes = codesRepo.SearchFor(predicate)
.Select(c => new Tuple<string, byte>(c.Id, c.Flag))
.ToList();
Và khi tôi chạy nó, tôi nhận được thông báo này:
Chỉ các bộ khởi tạo và bộ khởi tạo không tham số mới được hỗ trợ trong LINQ to Entities.
Tôi không biết mình phải tạo Tuple như thế nào vì tất cả các ví dụ mà tôi đã tìm thấy hầu hết đều giống như ví dụ này.
Tôi đã thử điều này:
codes = codesRepo.SearchFor(predicate)
.Select(c => Tuple.Create(c.Id, c.Flag))
.ToList();
Và gặp lỗi này:
LINQ to Entities không nhận dạng được phương thức 'System.Tuple`2 [System.String, System.Byte] Create [String, Byte] (System.String, Byte)' và phương thức này không thể được dịch thành một biểu thức lưu trữ.
Vấn đề ở đâu?