best way to handle multiple codebases interacting with same db? - C#