当前位置: 首页 > 知识库问答 >
问题:

EF 核心 Cosmos DB 提供程序是否支持适用于宇宙数据库的新批量 API?

寇升
2023-03-14

我们使用最新的EF Core 3.1和Cosmos DB provider。我们想批量插入Cosmos DB,但不知道最新的EF核心提供者是否支持Cosmos DB的新批量API。

EF 核心 Cosmos DB 提供程序是否支持适用于宇宙数据库的新批量 API?

我们已经研究了 https://github.com/dotnet/efcore,但无法确定这是否受支持。我们还研究了 https://docs.microsoft.com/en-us/ef/core/providers/cosmos/。

共有2个答案

严升
2023-03-14

实体框架没有隐式提供这一点,但您可以从DBContext类获取cosmos客户端并显式执行。

以下是示例:

        CosmosClient cosmosClient = _context.Database.GetCosmosClient();
        Database database = cosmosClient.GetDatabase("PersonalizationOrder");
        Container container = database.GetContainer(typeof(T).Name);
        var data = await container.CreateItemAsync(new Order
        {
            Id = Guid.NewGuid(),
            PartitionKey = "1",
            ShippingAddress = new StreetAddress()
            {
                City = "XYZ",
                Street = "Street, ttt st"
            }
        });
公良鸿畅
2023-03-14

它不包括本机Cosmos.NET sdk v3中的批量支持。您必须使用本机.NET sdk V4来执行批量操作。我们有一篇四月的博客文章,其中有更多细节。

 类似资料:
  • Oracle .NET 团队正在评估 EF Core 支持,但还没有宣布任何时间点。你可以在 Oracle EF Core 提供程序请求 上进行表决。 请直接向 Oracle 社区站点 询问关于此提供商的任何问题,包括发布时间表。

  • Devart 是一个第三方提供程序编写方,它为多种数据库提供了数据库提供程序。可以通过 devart.com/dotconnect 了解更多信息。 注意 该提供程序没有作为 Entity Framework Core 项目的一部分来维护。当考虑第三方提供程序的时候,一定要评估其质量、许可、支持情况等等以确保它们符合你的需求。 仅付费版可用 Devart dotConnect 是一个商业的第三方提供

  • 该数据库提供程序允许 Entity Framework Core 被用于访问 MySQL。它被作为 MySQL 项目的一部分来维护。 警告 该提供程序处于预发布状态 注意 该提供程序没有作为 Entity Framework Core 项目的一部分来维护。当考虑第三方提供程序的时候,一定要评估其质量、许可、支持情况等等以确保它们符合你的需求。 安装 安装 MySql.Data.EntityFram

  • 该数据库提供程序允许 Entity Framework Core 被用于访问 SQLite,它被作为 Entity Framework GitHub 项目的一部分来维护。 安装 安装 Microsoft.EntityFrameworkCore.SQLite NuGet 程序包。 PM> Install-Package Microsoft.EntityFrameworkCore.SQLite 入门

  • 我们计划将数据库迁移到Azure cosmos graph数据库。我们正在使用此批量导入工具。 它没有提到Json输入格式。 批量导入Azure cosmos graph db的Json格式是什么 https://github.com/Azure-Samples/azure-cosmosdb-graph-bulkexecutor-dotnet-getting-started azure 批量导入映

  • 注意 该功能从 EF Core 1.1 引入 内存优化表 是指 SQL Server 将整张数据表留存在内存中的功能,表数据的第二副本维持在磁盘上,但它仅用作持久化处理。内存优化表中的数据则在数据库恢复(比如数据库服务器重启)时从磁盘读取。 配置内存优化表 可以将实体所映射到的数据表指定为内存优化表,如此则可以在在使用 EF Core 创建和维护基于模型的数据库时(无论是通过迁移还是 Databa