3 回答

TA貢獻2003條經驗 獲得超2個贊
您僅從 Usuario
數據庫中檢索。如果您想獲得任何其他信息,您需要使用Include
.
代替線var user = ctx.usuarios.ToList().Where(b => b.email == email);
你需要有var user = ctx.usuarios.Where(b => b.email == email).Include(usr => usr.alimento).ToList();
附言
我ToList()
作為最后一個操作移動,因為它評估表達式?,F在它將在檢索數據之前過濾表,而不是下載所有用戶并在之后過濾。

TA貢獻1777條經驗 獲得超10個贊
嘗試使用此示例進行映射:
public class Usuario{
public int Id { get; set; }
public string email { get; set; }
[Required(ErrorMessage = "Se requiere de una denominacion")]
[StringLength(50, MinimumLength = 2)]
public string nombre { get; set; }
[ForeignKey("alimento")]
public int AlimentoId {get; set;}
public virtual Alimento alimento { get; set; }
}
public class Alimento{
[Key]
[DatabaseGenerated(DatabaseGeneratedOption.None)]
public int codAl { get; set; }
[Required(ErrorMessage = "Se requiere de una denominacion")]
[StringLength(50, MinimumLength = 2)]
public string Descripcion { get; set; }
public string Cantidad { get; set; }
[Required(ErrorMessage = "Calorias es imprescindible")]
[DataType(DataType.Currency)]
[Range(1, 999, ErrorMessage = "El rango debe estar entre 1 y 999")]
public int Calorias { get; set; }
public virtual ICollection<Usario> Users {get; set;}
}
應該使用上面的代碼創建正確的一對多映射。像這樣的東西應該從 Usario 表收到。
[{"id":1,"email":"mail","nombre":"nombre","AlimentoId":1}]
- 3 回答
- 0 關注
- 118 瀏覽
添加回答
舉報