我的主网站使用数据库来存储和访问用户帐户。我正在使用EF来管理架构。我还定义了特定于站点的POCO并将它们迁移到数据库中。
现在,如果我想要一个单独的网站,例如,资源服务器(Web API),它将公开(通过授权)主网站上设置的相同数据,该怎么办?
我已经看到了将POCO和DbContexts放在库中并让多个项目引用同一个库的建议。这似乎是可行的,但是我必须对连接字符串进行硬编码,这对我来说似乎很脏。
我开始认为EF可能不推荐用于这种设置。看起来数据库优先方法在这里发挥得更好 - 尽管我必须为每个数据库模式更改手动重新编写数据上下文(很可能是LINQ-SQL)。
在这种情况下,是否有任何鲜为人知的功能,事实,做法等适用于EF?
答案 0 :(得分:0)
通常,您可以通过让一个API为两个站点提供服务来避免重复,并在需要时为每个站点提供资源版本。另一方面,如果您选择重用并添加方法,则创建其他EF代码优先实体不应干扰其他站点数据层(如果仔细建模和映射)。 DbContext连接字符串不必是硬编码的。