Base solution for your next web application
Open Closed

how to implement a many to many relationship #412


User avatar
0
cicciottino created

I'd like to set up a tagging system for an entity in order to get a many to many relationship
How is it possible achieve this sort relationship in abp?

Using a tag entity, an article entity and between them...? should i create another entity like "artcicles_tags"?
Must this middle entity be derived from "Entity<long>" as well?
and the mapping configuration is by convention or i must mapping it manually?
Could you give me some clues? some suggestion?


2 Answer(s)
  • User Avatar
    0
    ddnils created

    Have a look at Entity Framework.

    You can pretty much use either. If you just want Many to Many relationship, thats possible by just creating your Entities the right way:

    public class Article: Entity {
      public  long Id {get;set;}
      ...
      public virtual ICollection Tags {get;set;}
    }
    
    public class Tag: Entity {
      ...
      public virtual ICollection
    Articles {get;set;} }

    This should work. (EF creates your tables)

    But if you want your relationship table to have additional fields (ie. CreationDate) you need to use FluentApi.

    See this document for help: <a class="postlink" href="http://www.entityframeworktutorial.net/code-first/configure-many-to-many-relationship-in-code-first.aspx">http://www.entityframeworktutorial.net/ ... first.aspx</a>

  • User Avatar
    0
    cicciottino created

    oh thanks a lot
    i did it quickly and easily

    1. Added the navigation properties

    2. Add-Migration

    3. Update-Database

    and it's done, nice.