In my project I have a table Translation that can have translations for any model. To achieve this, the table has two fields: Model and ModelId>
Translation
Model
ModelId>
Yes, there is. Use this:
modelBuilder.Entity() .HasMany(bm => bm.Translations) .WithForeignKey(x => new { x.Key1, x.Key2 });
Key1 and Key2 obviously need to be the keys to the relation and you may also need to define them as such (in the same order) for the Translation entity.