ฉันจะแก้ไขปัญหานี้ใน MVC ได้อย่างไร
ฉันมีโมเดลข้อมูลต่อไปนี้
public class Game
{
public int GameID { get; set; }
public string Name { get; set; }
public virtual ICollection<Player> Players { get; set;
}
public class Player
{
public int PlayerID { get; set; }
public string Name { get; set; }
public int GameID { get; set; }
public virtual Game Game { get; set; }
}
ในคลาส Context ฉันกำลังสร้างชุดข้อมูลทั้งสองชุด
public DbSet<Game> Games { get; set; }
public DbSet<Player> Players { get; set; }
ตอนนี้ฉันมีคอนโทรลเลอร์ MVC ธรรมดาที่ใช้ Get API ควรส่งคืนชุดข้อมูล json พร้อมรายชื่อเกมและต่อเกมรายชื่อผู้เล่น...
ฉันลองใช้คอนโทรลเลอร์ MVC นี้
public JsonResult Games()
{
var Games = db.Games;
return Json(Games, JsonRequestBehavior.AllowGet);
}
ด้วยเหตุนี้ ฉันได้รับข้อผิดพลาดแจ้งว่ามีโปรแกรมอ่านข้อมูลที่เปิดอยู่แล้ว ฉันเข้าใจเรื่องนั้นแต่ฉันไม่มีความรู้ที่จะแก้ไขมัน
เพื่อที่จะแก้ปัญหานี้ ฉันพยายามใส่มันลงในรายการ‹>
public JsonResult Games()
{
var Games = db.Games.ToList();
return Json(Games, JsonRequestBehavior.AllowGet);
}
เมื่อถึงจุดนั้น ฉันได้รับข้อผิดพลาดในการอ้างอิงแบบวงกลม (ฉันเดาว่ามันมาจากเกมเสมือนจริงกับผู้เล่นแต่ละคน แต่ถ้าฉันต้องการมันล่ะ?
วิธีที่ถูกต้องและง่ายในการส่งต่อปัญหานี้คืออะไร?
ฉันคิดว่ามันต้องเป็นสิ่งพื้นฐานเนื่องจากเป็นการกำหนดค่าพื้นฐานสำหรับผู้ปกครอง/รอง แต่ฉันขาดอะไรบางอย่างไป