Je suis intéressé par la façon dont je peux mapper deux entités à la même table, en utilisant d'abord le code. Voici un exemple:Code EF Premier Plusieurs entités à la même table
public class User
{
[Key]
public int UserId { get; set; }
public string Name { get; set; }
public byte Age { get; set; }
public bool Active { get; set; }
public DateTime Created { get; set; }
}
public class UserViewModel
{
[Key]
public int UserId { get; set; }
public string Name { get; set; }
public byte Age { get; set; }
}
Fondamentalement, j'en ai marre des bâtiments de construction. Je veux mapper tous les modèles possibles pour le portail de configuration, le portail utilisateur, d'autres services dans modelbuilder et utiliser simplement DbContext pour tout. Je veux définir la classe User en haut de la hiérarchie et une classe qui construit la base de données, alors que tous les autres modèles devraient être là pour diverses applications.
Je ne veux pas utiliser automapper. J'ai aussi fait beaucoup de codage manuel, ce qui m'a fait perdre du temps, et chaque modification nécessite que je retourne dans le dépôt et que je recode, ce qui m'agace.
J'ai essayé de l'utiliser dans ModelBuilder, mais il me avertit que la hiérarchie est pas valide:
protected override void OnModelCreating(DbModelBuilder modelBuilder)
{
modelBuilder.Entity<User>().Map(p => { p.ToTable("Users"); });
modelBuilder.Entity<UserViewModel>().Map(p => { p.ToTable("Users"); });
}
Gardez à l'esprit que je ne cherche pas à obtenir « le fractionnement du tableau ». Je ne veux pas que ma table soit divisée en deux entités, je veux plutôt que toutes les colonnes soient valables, sauf une avec la clé primaire, et permettez aux différentes applications/services web/portails Web de remplir autant de données qu'elles ont été accordées accès pour.
Merci pour tous les conseils :)
Jetez un oeil à la configuration du référentiel générique. Tout ce dont vous avez besoin est d'un référentiel unique pour toutes vos entités. Je ressens votre douleur, j'ai utilisé un référentiel pour chaque entité jusqu'à ce que je découvre le modèle de référentiels génériques. – JBeckton