实体框架,如ORM for Cosmos DB

Aks*_*hat 10 .net azure azure-cosmosdb

我正在寻找Cosmos DB的任何ORM.样本中提到的大多数客户端在需要时创建与表的新连接,即没有连接池策略.似乎总是如样本中给出的那样创建新连接是不可扩展的.如果我错了,请纠正我.有没有人有任何良好的ORM解决方案,其中包含连接池

Nic*_*sas 7

宇航员正是您所需要的.

它是一个简单而简约的对象映射器,它创建了一个集合到对象的关系.您可以使用POCO对象并执行所有CRUD操作.

它支持集合共享,以降低在一个集合中拥有多个对象的成本.

在这里阅读更多关于宇航员的信息.

免责声明,我是宇航员的创造者.


Nei*_*eil 7

Cosmos DB 现在支持实体框架(公告)(虽然此时处于预览状态);但效果很好。

ps 不错的第 3 方指南其中包含有关如何设置的更多详细信息:

但是,您应该真正考虑是否需要 EF (ORM)。如果您将数据库切换到 CosmosDB,这可能很有用;并且不想立即更改您的 EF 代码;但请注意,在任何情况下切换 dbs 都需要在 EF-front 上工作;如果切换数据库类型,则更是如此:与 NoSQL 相关。

EF 做 ORM(对象到数据库映射);然而 NoSQL 已经有对象映射,所以 EF 并不是真正需要的(实际上不必要地使事情复杂化。

微软在相关主题上写了一篇很好的文章:https : //docs.microsoft.com/en-us/dotnet/standard/microservices-architecture/microservice-ddd-cqrs-patterns/nosql-database-persistence-infrastructure