У меня есть три модели, связанные с Subject, UserSchools и Enroll_Teacher_Subjects.Я хочу сделать запрос, чтобы получить информацию о UserSchools и отношениях, которые Enroll_Teacher_Subjects имел с UserSchools.Это работает для меня, но мне также нужна информация объект Subject, который находится внутри Enroll_Teacher_Subjects, потому что мне нужны NameSubject, DescriptionSubject.Всегда имеет значение null, и я не могу разместить его в лямбда-запросе включения.
Тема предмета
public class Subject
{
[Key]
public int SubjectId { get; set; }
[Required]
[StringLength(50)]//only you can to write 50 characters
[Display(Name = "Nombre de la Materia")]
public string NameSubject { get; set; }
[DataType(DataType.MultilineText)]
[Display(Name = "Descripcion de la Materia")]
public string DescriptionSubject { get; set; }
[Display(Name = "Grado")]
public int LevelId { get; set; }
public virtual Level Level { get; set; }
public virtual ICollection<Enroll_Teacher_Subject> Enroll_Teacher_Subjects { get; set; }
}
модель UserSchool
public class UserSchool
{
[Key]
public int UserId { get; set; }
[Display(Name = "E-Mail")]
[Required(ErrorMessage = "The field {0} is required")]
[StringLength(50)]//only you can to write 50 characters
[DataType(DataType.EmailAddress)]
// [Index("UserNameIndex", Isnique = true)]
public string EmailUser { get; set; }
[Display(Name = "Nombres")]
[Required]
public string FirstNameUser { get; set; }
[Display(Name = "Apellidos")]
[Required]
public string LastNameUser { get; set; }
[Display(Name = "Full Name")]
public string FullName
{
get { return string.Format("{0} {1}", this.FirstNameUser, this.LastNameUser); }
}
[Display(Name = "Telefono")]
public string PhoneUser { get; set; }
[Display(Name = "Direccion de residencia")]
[Required]
public string AddressUser { get; set; }
[Display(Name = "Fecha de nacimiento")]
[DataType(DataType.Date)]// para que nos muestre el calendario
public DateTime DateBirthdayUser{ get; set; }
[Display(Name = "Imagen")]
public string PhotoUser { get; set; }
[Display(Name = "Estudiante")]
public bool IsStudentUser { get; set; }
[Display(Name = "Profesor")]
public bool IsTeacherUser { get; set; }
[Display(Name = "Sistemas")]
public bool IsSystemUser { get; set; }
[Display(Name = "Numero de documento")]
public string NumberDocumentUsers { get; set; }
[Display(Name = "Tipo de documento")]
public int TypeDocumentId { get; set; }
public virtual TypeDocument TypeDocument { get; set; }
[Display(Name = "Pais de nacimiento")]
public int CountryId { get; set; }
public virtual Country Country { get; set; }
[Display(Name = "Departamento de nacimiento")]
public int StateId { get; set; }
public virtual State State { get; set; }
[Display(Name = "Ciudad de nacimento")]
public int CityId { get; set; }
public virtual City City { get; set; }
public virtual ICollection<Enroll_Teacher_Subject> Enroll_Teacher_Subjects { get; set; }
}
Модель Enroll_Teacher_Subject
public class Enroll_Teacher_Subject
{
[Key]
public int Enroll_Teacher_SubjectId { get; set; }
[Required]
[Display(Name = "Fecha Matricula ")]
[DataType(DataType.Date)]
public DateTime DateEnroll_Teacher_Subject { get; set; }
[DataType(DataType.MultilineText)]
[Display(Name = "Observaciones")]
public string ObservationEnroll_Teacher_Subject { get; set; }
[Display(Name = "Profesor")]
public int UserId { get; set; }
public virtual UserSchool UserSchool { get; set; }
[Display(Name = "Materia")]
public int SubjectId { get; set; }
public virtual Subject Subject { get; set; }
[Display(Name = "Anno lectivo")]
public int AnnoLectivoId { get; set; }
public virtual AnnoLectivo AnnoLectivo { get; set; }
public virtual ICollection<Enroll_Student_Subject_Teacher> Enroll_Student_Subject_Teachers { get; set; }
}
запрос
public async Task<ActionResult> Details(int? id)
{
if (id == null)
{
return new HttpStatusCodeResult(HttpStatusCode.BadRequest);
}
var UserList = await db.UserSchools
.Include(x => x.Enroll_Teacher_Subjects)
.Include(x => x.TypeDocument)
.FirstOrDefaultAsync(x => x.UserId == id);
if (UserList == null)
{
return HttpNotFound();
}
return View(UserList);
}
мой запрос
Объект нулевой, и я хочу, чтобы он давал информацию опредмет