这个不需要纠结。
纠结时,可能主要是考虑到“谁去手工设置库结构?”的问题。也就是DB First 还是 Code First 的问题(我不是仅仅说的EF,我是说的是模式)。
假设你们的开发中将(关系)数据库结构更新升级作为一个开发时自动的行为,例如应用程序自动运行关系数据库的脚本文件而自动升级,或者并不是所有开发者都只是在一个办公室里访问同一个关系数据库(例如在不同城市、在不同时间、在家里,等等),或者有大量自动化测试数据可能随时对数据库进行剧变,或者就是懒得总是动不动就去手动修改配置文件中的数据库连接串,等等原因,这就需要能够分开数据库而互不干扰。
如果是因为其中有大量“手工操作”、开发者不能自己部署和升级的服务才只好让所有人都跑到一个地方去访问你的公共的东西,这说明了你们的团队的一个“懒得自动化”的效率和“相互牵制”的风格而已。