0

Модель:EF Code First Каркасно участия лица Выбор внешнего ключа

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; } 
} 

Используя выше код ее создания этой схемы для БД.

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

Теперь я хочу, чтобы получить доступ к User_UserId из таблицы адресов, но он не показывает какого-либо имущества там. Его дает ошибку «Address не содержит определения для User_UserId .....

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

ответ

1

Использование внешних ключей Ассоциация вместо независим ассоциации при создании моделей. Это означает, что вы должны включать в себя иностранные Ключевое свойство в модели наряду с соответствующей Навигационный собственности, например:..

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

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

Читать this article для получения дополнительной информации

 Смежные вопросы

  • Нет связанных вопросов^_^