ฉันกำลังทำงานกับ C # และ. NET Framework 4.5.1 เพื่อดึงข้อมูลจากฐานข้อมูล SQL Server ด้วย Entity Framework 6.1.3
ฉันมีสิ่งนี้:
codes = codesRepo.SearchFor(predicate)
.Select(c => new Tuple<string, byte>(c.Id, c.Flag))
.ToList();
และเมื่อเรียกใช้ฉันจะได้รับข้อความนี้:
รองรับเฉพาะตัวสร้างและตัวเริ่มต้นที่ไม่มีพารามิเตอร์เท่านั้นใน LINQ ถึงเอนทิตี
ฉันไม่รู้ว่าฉันต้องสร้าง Tuple อย่างไรเพราะตัวอย่างทั้งหมดที่ฉันพบส่วนใหญ่เป็นแบบนี้
ฉันได้ลองสิ่งนี้:
codes = codesRepo.SearchFor(predicate)
.Select(c => Tuple.Create(c.Id, c.Flag))
.ToList();
และรับข้อผิดพลาดนี้:
LINQ เป็นเอนทิตีไม่รู้จักเมธอด 'System.Tuple'2 [System.String, System Byte] Create [String, Byte] (System.String, Byte)' และวิธีนี้ไม่สามารถแปลเป็นนิพจน์ที่เก็บได้
ปัญหาอยู่ที่ไหน