2009-08-19 4 views
1

C'est la première fois que j'utilise Subsonic.SubSonic 3 - Référentiel simple - Une à plusieurs relations

Disons que je les classes:

public class Store 
{ 
    public int Id { get; set; } 
    public String Name { get; set; } 
} 

public class Employee 
{ 
    public int Id { get; set; } 
    public String Name { get; set; } 
} 

Un employé est lié à un magasin avec date d'embauche est. Cela signifie que, dans la base de données que je vais avoir une table intermédiaire avec StoreID, EmployeeId, StartDate, EndDate

MISE À JOUR

Un employé peut travailler à la StoreA de 2009-01-01 à 2009-04-04 et le travail pour StoreB du 2009-04-05 à ... Et je ne veux pas que ma table de données répète toutes les informations de mon employé chaque fois qu'un employé change de magasin pour lequel il travaille. Dans cet exemple, l'employé n'a qu'un nom, mais disons qu'un employé a 10 biens (adresse, âge, sexe ...)

Comment pourrais-je y parvenir?

Répondre

1

Sur la base de votre commentaire et la question mise à jour il semble que vous voulez quelque chose comme ce qui suit:

public class Store 
{ 
    public int Id { get; set; } 
    public String Name { get; set; } 
} 

public class StoreEmployee 
{ 
    public int Id { get; set; } 
    public Employee Employee { get; set; } 
    public Store Store { get; set; } 
    public DateTime HiredDate { get; set; } 
} 

public class Employee 
{ 
    public int Id { get; set; } 
    public String Name { get; set; } 
} 
+0

Peut-être que je me trompe moi-même. Je veux dire qu'un employé peut travailler à la StoreA de 2009-01-01 à 2009-04-04 et travailler pour StoreB du 2009-04-05 à ... Et je ne veux pas que ma table de données répète toutes les informations de mon employé chaque fois qu'un employé change le magasin pour lequel il travaille. Dans cet exemple, l'employé n'a qu'un nom, mais disons qu'un employé a eu 10 propriétés (adresse, âge, sexe ...) – Melursus

+0

+1 cela m'a aidé étant donné le manque d'information sur le site subsonique. – Andrew

0

Vous aurez en fait besoin d'un grand nombre à plusieurs relations qui se joindra à un dossier d'employé à un magasin Enregistrer, avec une charge utile de dates de début et de fin.

Les objets ressemblera à ceci:

public class Store 
{ 
    public int Id { get; set; } 
    public String Name { get; set; } 
} 

public class Employee 
{ 
    public int Id { get; set; } 
    public String Name { get; set; } 
    public IList<EmploymentTerm> EmploymentTerms { get; set; } 
} 

public class EmploymentTerm 
{ 
    public int Id { get; set; } 
    public Store Store { get; set; } 
    public Employee Employee { get; set; } 
    public DateTime? StartDate { get; set; } 
    public DateTime? EndDate { get; set; } 
} 

a fait cela Freehand donc il pourrait y avoir une erreur de couple.

Questions connexes