0

Modèle:Entité de code EF Première Choisir clé étrangère

public class Address 
{ 
    [Key] 
    public long AddressId { get; set; } 

    public string Street { get; set; } 

    public string Town { get; set; } 

    public string State { get; set; } 

    public string Country { get; set; } 
} 
public class User 
{ 
    [Key] 
    public long UserId { get; set; } 

    public string UserName { get; set; } 

    public string Password { get; set; } 

    public virtual List<Address> Addresses { get; set; } 
} 

DBContext:

public class DataModelContext : DbContext 
{ 
     public DbSet<Address> Addresses { get; set; } 
     public DbSet<User> Users{ get; set; } 
} 

En utilisant le code ci-dessus la création de ce schéma pour DB.

Addresses   Users 
-----------  ------- 
AddressId(PK)  UserId(PK) 
Street    UserName 
Town    Password 
State 
Country 
User_UserId(FK) 

Maintenant, je veux accéder User_UserId de la table des adresses, mais il ne montre pas une propriété là-bas. Son erreur « Adresse donner ne contient pas de définition pour User_UserId .....

using (var db = new DataModelContext()) 
{ 
     db.Addresses.Select(x=>x.User_UserId).ToList(); 
} 

Répondre

1

Utilisation Association clé étrangère au lieu de association indépendante tout en créant des modèles. Cela signifie que, vous devez inclure un étranger clé dans votre propriété modèle à côté d'un correspondant propriété de navigation par exemple:..

public class Address 
{ 
    ... 
    public int UserId {get; set;} //Foreign-Key property 

    [ForeignKey("UserId")] 
    public virtual User User { get; set; } // Navigational Property 
    ... 
} 

Lire this article pour plus d'informations