sql-server - 在 node.js 中使用带有存储库模式的 SQL Server 和 mongodb

标签 sql-server node.js mongodb express dependency-injection

我尝试在 expressJS 中使用存储库模式实现依赖注入(inject)。我想使用两种不同的存储库类型(mongodb 和 SQL Server)但使用一个 Controller 来实现这一点。

当应用程序启动时,我应该选择应用程序使用的一种存储库类型(例如 SQL Server 存储库)。所以我不想为每个存储库类型创建不同的 Controller 。

我该怎么做?有什么建议吗?

最佳答案

我怀疑您使用的是静态类型语言,例如 C# 或 Java,在这些语言中,将一个类用于另一个类有点令人费解,因为它们的接口(interface)必须匹配。请记住,在像 JavaScript 这样的语言中,使用一个或另一个类动态类型化很容易;使用一个或另一个几乎没有必要的仪式,主要取决于您确保两个类都实现所需的功能。

var dbProv = (config == "sql") ? new SqlProv() : new mongoProv();
dbProv.getAll();

关于sql-server - 在 node.js 中使用带有存储库模式的 SQL Server 和 mongodb,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20613845/

相关文章:

sql-server - Sql Server 2008 - 排序规则类型之间的差异

javascript - 在这种特殊情况下如何将数组转换为对象?

node.js - 配对 sails、passport 和 mongo : error: A hook (`session` ) failed to load! 对象 .... 没有方法 'assign'

python - 如何使用 Python 将 JSON 文件导入 MongoDB

MongoDB 如何将字符串类型的日期 yyyy-m-d 更新为 yyyy-mm-dd

sql-server - 在部署到 docker/linux 的 ASP.NET Core 应用程序中使用 SQL Server Always Encrypted

c# - Entity Framework 问题 "The table/view ' 没有定义主键。”

javascript - 适用于 macOS 的 Node.js 应用程序捆绑

node.js - $unset 为空。您必须指定一个像这样的字段 : {$unset: {<field>: . ..}}

sql - 如果约束失败,则插入值或忽略行