gpt4 book ai didi

c# - 链接服务器和 Entity Framework 。还有其他选择吗?

转载 作者:行者123 更新时间:2023-11-30 16:58:34 25 4
gpt4 key购买 nike

我必须重写一个 ASP.NET webforms 日志查看器应用程序。新版本基于 ASP.NET MVC。

架构:

只有一个 Web 前端,但有多个数据库分布在世界各地(每个司法管辖区)。当前的解决方案已将服务器从中央数据库链接到所有其他实例。一些司法管辖区受防火墙保护,但防火墙上有一条异常(exception)规则,允许从中央数据库服务器连接到司法管辖区的 SQL Server。不允许其他连接。

他们在当前解决方案中所做的是,他们在中央服务器上创建了一个单独的数据库,其中包含通过链接服务器访问远程数据库表的 View 。如前所述,有一个 UI 实例。用户可以选择数据库实例来查看日志。

我想将它迁移到 Entity Framework ,如果我使用相同的架构,它会工作。

现在的问题是:是否有任何其他方法可以在不创建/维护这些链接数据库的情况下实现此目的以达到相同的结果?

最佳答案

不,从 EF 6.1 开始没有比这更简单的了。

如果 EF 支持同义词,那么您可以在中央数据库中为链接数据库中的所有表创建同义词(当然,在不同的模式中)。这会减少一些开销,因为同义词比 View 更容易维护,您可以使用中央数据库的 DataTools 项目轻松地做到这一点。

同义词支持目前是proposal for a next version of EF .

至于现在,为什么不在中央数据库中创建和维护 View ?每个链接服务器/数据库一个模式:

[jurisdiction1].[vTableA]
[jurisdiction1].[vTableB]
...
[jurisdictionN].[vTableA]

类似于同义词,缺点是您需要为 View 编写更多代码。您仍然可以使用 DataTools 进行版本控制、更改跟踪和提供增量更新脚本。

如果您认为现在很难管理您的数据库,我建议查看 DataTools .它们使模式管理更容易处理。

关于c# - 链接服务器和 Entity Framework 。还有其他选择吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25133903/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com