严重的是,我不知道如何正确表达这一点。
我有2个型号:
public class ProfesorCursoMateriaPeriodo
{
public int Id { get; set; }
public int ProfesorId { get; set; }
public int CursoId { get; set; }
public int MateriaId { get; set; }
/// <summary>
/// Referencia a la columna de Grupo en GrupoPeriodo
/// </summary>
public int Grupo { get; set; }
[ForeignKey("ProfesorId")]
public virtual Profesor Profesor { get; set; }
[ForeignKey("Grupo")]
public virtual List<GrupoPeriodo> GrupoPeriodo { get; set; }
[ForeignKey("CursoId")]
public virtual Curso Curso { get; set; }
[ForeignKey("MateriaId")]
public virtual Materia Materia { get; set; }
}
public class GrupoPeriodo
{
public int Id { get; set; }
public int PeriodoId { get; set; }
public int Grupo { get; set; }
[ForeignKey("PeriodoId")]
public virtual Periodo Periodo { get; set; }
}
我想从ProfesorCursoMateriaPeriodo
使用Grupo
属性来从GrupoPeriodo
中获取所有值,这些值包含与后者中的Grupo
列相同的值({{ 1}})。
示例:
GrupoPeriodo
我想要的话,
var grupoPeriodo = new GrupoPeriodo[]
{
new GrupoPeriodo
{
Id = 1,
PeriodoId = 1,
Grupo = 1,
},
new GrupoPeriodo
{
Id = 2,
PeriodoId = 2,
Grupo = 1,
},
new GrupoPeriodo
{
Id = 3,
PeriodoId = 3,
Grupo = 1,
},
new GrupoPeriodo
{
Id = 4,
PeriodoId = 4,
Grupo = 1,
},
};
以上所有内容均指向new ProfesorCursoMateriaPeriodo {Id = 1, CursoId = 1, Grupo = 1, MateriaId = 1, ProfesorId = 1},
new ProfesorCursoMateriaPeriodo {Id = 2, CursoId = 2, Grupo = 1, MateriaId = 1, ProfesorId = 1},
new ProfesorCursoMateriaPeriodo {Id = 3, CursoId = 3, Grupo = 1, MateriaId = 1, ProfesorId = 1},
new ProfesorCursoMateriaPeriodo {Id = 4, CursoId = 4, Grupo = 1, MateriaId = 1, ProfesorId = 1},
new ProfesorCursoMateriaPeriodo {Id = 5, CursoId = 5, Grupo = 1, MateriaId = 1, ProfesorId = 1},
new ProfesorCursoMateriaPeriodo {Id = 6, CursoId = 6, Grupo = 1, MateriaId = 1, ProfesorId = 1},
new ProfesorCursoMateriaPeriodo {Id = 7, CursoId = 7, Grupo = 1, MateriaId = 1, ProfesorId = 1},
new ProfesorCursoMateriaPeriodo {Id = 8, CursoId = 1, Grupo = 1, MateriaId = 2, ProfesorId = 1},
new ProfesorCursoMateriaPeriodo {Id = 9, CursoId = 2, Grupo = 1, MateriaId = 2, ProfesorId = 1},
new ProfesorCursoMateriaPeriodo {Id = 10, CursoId = 3, Grupo = 1, MateriaId = 2, ProfesorId = 1},
new ProfesorCursoMateriaPeriodo {Id = 11, CursoId = 4, Grupo = 1, MateriaId = 2, ProfesorId = 1},
new ProfesorCursoMateriaPeriodo {Id = 12, CursoId = 5, Grupo = 1, MateriaId = 2, ProfesorId = 1},
new ProfesorCursoMateriaPeriodo {Id = 13, CursoId = 6, Grupo = 1, MateriaId = 2, ProfesorId = 1},
new ProfesorCursoMateriaPeriodo {Id = 14, CursoId = 7, Grupo = 1, MateriaId = 2, ProfesorId = 1},
的同一“组”。
这甚至可能吗?我想这样做而没有在GrupoPeriodo
中显式定义形式为ProfesorCursoMateriaPeriodoId
的外键。