gpt4 book ai didi

用于 EF 核心中数据迁移的 MongoDbContext?

转载 作者:行者123 更新时间:2023-12-05 04:02:25 36 4
gpt4 key购买 nike

目前我正在尝试寻找一种使用 EF core 2.2 进行数据迁移的方法。阅读说明后: https://learn.microsoft.com/en-us/ef/core/managing-schemas/migrations/

我意识到它只支持 DbContext。目前,在我的项目中,我的数据库有 mongoDBContext 和 IMongoDBContext,但我找不到任何支持它们的包。我也尝试使用 Microsoft.EntityFrameworkCore.Design 但它没有帮助。有什么解决方案可以让我使用 mongoDbContext 作为数据库提供者,或者任何支持 mongoDB 作为数据库提供者的包吗?

至于我在没有 DbContext 的情况下尝试创建迁移文件:

从我的终端

dotnet ef migrations add InitialCreate

错误

No DbContext was found in assembly '.Data'. Ensure that you're using the correct assembly and that the type is neither abstract nor generic.

非常感谢!

最佳答案

MongoDb 是无模式存储。

Entity Framework 迁移用于更新表的架构。是的,迁移也可以运行更新/删除/插入迁移的一部分,但这只是因为 Sql 依赖于架构。

此外,EF 不支持 MongoDb,因为 mongo db 不使用 sql,mongo db 有自己的 api/语言。

是的,最近更新的 EFCore 支持 CosmosDb,但这只是因为 CosmosDB 可以使用 sql

总结一下。

  1. 如果您需要修改架构,可能是您的 MongoDb 设计有误。
  2. 如果您想与 MongoDb 对话,请使用 https://docs.mongodb.com/ecosystem/drivers/csharp/
  3. 如果您不熟悉 MongoDb,请使用您熟悉的东西

关于用于 EF 核心中数据迁移的 MongoDbContext?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54358256/

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