English 中文(简体)
采用实体框架7.0代码第1条,采用更好的方法处理这一数据库的树木结构
原标题:Is there a better way to approach this database tree structure using Entity Framework 7.0 code first

我正在开发一个数据库,首先使用实体框架7.0代码。 我所看到的情景对我来说是一小.。 考虑以下实体图表。

“entergraph

  • A Store has many Pods
  • A Store has many Positions
  • A Pod has many Positions

图表成为树木结构。 这一点在职位表上产生了不幸的影响。 这还使导航班宽松。 我的立场班子对此视而不见。

public class Position
{
    [Key]
    [DatabaseGenerated(DatabaseGeneratedOption.Identity)]
    public int Id { get; set; }

    public string Name { get; set; }

    [ForeignKey(nameof(StoreId))] 
    public virtual Store Store { get; set; }
    public int StoreId { get; set; }

    [ForeignKey(nameof(PodId))]
    public virtual Pod Pod { get; set; }
    public int? PodId { get; set; }
}

在现实世界中,上述设想非常好。 仓库确实含有许多波德和/或许多位置。 波德还可以包含许多立场。 我只想看一下,一些经验更丰富的民间人士会怎样去做?

问题回答

以下实体为您的关系而工作。 无需明确混淆外国钥匙或其他模范环境。

    public class Store
    {
        [Key]
        public int Id { get; set; }
        public string Name { get; set; }
        public IEnumerable<Pod> Pods { get; set; }
        public IEnumerable<Position> Positions { get; set; }
    }

    public class Pod
    {
        [Key]
        public int Id { get; set; }
        public string Name { get; set; }
        public IEnumerable<Position> Positions { get; set; }
    }
    public class Position
    {
        [Key]
        public int Id { get; set; }
        public string Name { get; set; }
    }




相关问题
Entity Framework with MySQL connector in c#

I have been trying to get the Entity Framework to work in my web application using MySQL. It works fine on my local pc, but doesn t work when I put it on the server. Since the server is a shared ...

How Do I Create And Update A Many To Many Relationship With EF

I am using the Entity Framework with SQL Server. I have a many to many relationship between 2 tables. I have created a join table with just the primary key fields of the 2 tables. In the designer, the ...

Entity Framework with File-Based Database

I am in the process of developing a desktop application that needs a database. The application is currently targeted to SQL Express 2005 and works wonderfully. However, I m not crazy about having ...

Linq to enties, insert foreign keys

I am using the ADO entity framework for the first time and am not sure of the best way of inserting db recored that contain foreign keys. this is the code that i am using, I would appreciate any ...

Entity Framework - Many to many question

I have a table called ASB and a table called PeopleInvolved. There is a junction table called PeopleInvolved_ASB which simply contains an ASBID and a PeopleInvolvedID column. The columns act as a ...

Post back complex object from client side

I m using ASP.NET MVC and Entity Framework. I m going to pass a complex entity to the client side and allow the user to modify it, and post it back to the controller. But I don t know how to do that ...

ADO.NET Entity Data Model are not precise enough

I run this code: var cos = from k in _db.klienci_do_trasy where k.klient_id == 5 select k; but the query send to database is: SELECT * FROM `klienci_do_trasy` LIMIT 0, 30 why is it for, there ...

热门标签