Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to setup entity relations in Entity Framework Core

Here we are on EF Core and got 3 tables:

  1. News
  2. Items
  3. Links

And more (except News, Items): Content, Post, Form, etc.

And my model definitions

public class Item
{
    public int Id { get; set; }
    public string Name { get; set; }
    public decimal Price { get; set; }
    public Link Link { get; set; }
}

public class News
{
    public int Id { get; set; }
    public string Header { get; set; }
    public string Content { get; set; }
    public Link Link { get; set; }
}

public class Link
{
    public int Id { get; set; }
    public string Type { get; set; }
    public int RowId  { get; set; }
    public string Url { get; set; }
}

Table Links describe URL for every News and every Item. This means that Links has 4 columns:

  1. Id
  2. Type - news or item
  3. RowId - contains ID of Item or News (depends on the Type)
  4. URL

How to setup the relationships? Keep in mind that we need to resolve Entity by URL in Links table.

like image 377
Alex Avatar asked Mar 25 '17 11:03

Alex


1 Answers

Dapper. Just Dapper that allows write custom queries.

like image 184
Alex Avatar answered Oct 13 '22 00:10

Alex