Question

Il est la première fois que je l'utilise subsonique.

Disons que j'ai ces 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

UPDATE

Un employé peut travailler à la StoreA de 2009-01-01 à 2009-04-04 et travailler pour StoreB de 2009-04-05 à ... Et je ne veux pas que ma table de données répéter toutes les informations de mon employé chaque fois qu'un employé changer le magasin, il travaille. Dans cet employé exemple avoir seulement un nom, mais permet de dire un employé a 10 propriété (adresse, âge, sexe ...)

Comment pourrais-je y parvenir?

Était-ce utile?

La solution

D'après 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; }
}

Autres conseils

Vous aurez en fait besoin d'un grand nombre à plusieurs relations qui se joindront à un dossier d'employé à un Disquaire, 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; }
}

Cette Freehand donc il pourrait y avoir une erreur de couple.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top