Unfortunately, EF Core currently (the latest currently v2.0) does not provide a good way to manage agreements around the world.
The default EF Core 2.0 standard is to use DeleteBehavior.Restrict for DeleteBehavior.ClientSetNull and DeleteBehavior.ClientSetNull for additional relationships. As a workaround, I can suggest a typical metadata model loop at the end of the OnModelCreating override. In this case, find all relationships already discovered and modify them accordingly:
protected override void OnModelCreating(ModelBuilder modelBuilder) {
source share