J'ai un système hérité sur lequel je travaille et il y a une relation particulière avec laquelle j'ai des problèmes.Relation many-to-many via une clé non-primaire pour un système existant
Le problème est que je dois relier Patient à HL7EPICareMeds ... la relation ci-dessus ne fonctionne pas, bien sûr.
Du point de vue de la table, voici ce que j'ai
patient:
PatientId: int, PK
ClinicPatientId: varchar --- pas unique
HL7EPICareMeds:
Id :: int, PK
ClinicPatientId: varchar
MedName: varchar
AdminTime: datetime
Dois-je réutiliser la table Patient comme table d'association entre ClinicPatientIDs et PatientId?
[ActiveRecord]
public class Patient : RecordBase<Patient>
{
[PrimaryKey("PatientId", Generator=PrimaryKeyType.Native)]
public int? Id
{
get { return _id; }
set
{
_id = value;
}
}
[HasAndBelongsToMany(Inverse = true, Lazy = true)]
public IList<HL7EPICareMeds> Meds
{
get { return _meds; }
set { _meds = value; }
}
}
[ActiveRecord]
public class HL7EPICareMeds : RecordBase<HL7EPICareMeds>
{
[PrimaryKey(Generator = PrimaryKeyType.Native)]
public long Id
{
get { return _Id; }
set
{
_Id = value;
}
}
[Property("AdminTime")]
public DateTime? AdministrationTime
{
get { return _AdministrationTime; }
set { _AdministrationTime = value; }
}
[Property(NotNull = true,Update=false,Insert=false),
ValidateLength(0, 20)]
public string ClinicPatientId
{
get { return _ClinicPatientId; }
set
{
_ClinicPatientId = value;
}
}
[Property(NotNull = true),
ValidateLength(0, 255)]
public string MedName
{
get { return _MedName; }
set
{
_MedName = value;
}
}
[HasAndBelongsToMany()]
public Patient Patient
{
get { return _patient; }
set { _patient = value; }
}
}
La correspondance de propriété-ref n'est-elle pas disponible uniquement dans une relation un-à-plusieurs? Ou peut-être son utilisé pour l'héritage de table? – Marc