I have the following many-to-many relationship set up in my db.

Mapped using Code-First EF; A Ticket has an ICollection of Branch and vice versa.
This all works fine but now I need to make a significant change since the spec has been fleshed out.
Originally a single Ticket could be marked as IsRead but that, as a concept, only really works when the Ticket is allocated to a single branch. What I need to do is say that a Ticket has been read at each individual Branch.
Now my first thought is that I should change the relational table BranchTickets so that it has an Identity column and the IsRead property thus creating a one-to-many relationship but I don’t know then how to map the two foreign keys using the Code-First Api.
Would this be the right approach, and if so how would I go about ensuring EF maps the tables appropriately?
If a
Ticketcan only be deemed read atBranchlevel, then I would say all you need to do is remove theIsReadproperty fromTicketand move it toBranchTickets.This means each individual ticket can be associated with multiple branches which can have different read states.
This is a change you would need to make at DB level, you can then update your EF model.