带有 Dataverse 的实体框架

问题描述 投票:0回答:3

我被要求创建基于 Dataverse 数据库的 Web API。 我知道 Dataverse 已经拥有自己的 API 和 Web 服务来访问数据,但在未来的某个时候,我们可能希望从 Dataverse 迁移到另一个数据库,这就是为什么决定在现有 Dataverse API 之上构建 API。

我在构建 API 方面经验不是很丰富,但我的第一个想法是开始将 Entity Framework 与 Dataverse 结合使用(因为我对 EF 比对 Dataverse API 更熟悉)。

您在这个领域有任何经验吗?我的意思是使用实体框架而不是提供的服务(REST API、OrgSvc)从 Dataverse 访问数据?这是否有意义或者我应该使用现有的服务吗?

c# .net entity-framework dataverse
3个回答
3
投票

只需连接到 TDS 端点 并访问 Dataverse,就像访问 SQL Server 一样。 我怀疑逆向工程是否有效,因此您可能需要手动编写实体和/或 SQL 语句。

请注意,TDS 端点是只读的。


0
投票

我们使用 MS Dynamics Dataverse 已有一年多了,但使用 .net Framework 4.7.2 访问数据确实很困难。

我们的开发团队甚至考虑过从 CData 购买该解决方案(来源:https://www.cdata.com/kb/tech/dataverse-ado-codefirst.rst),但它的价格很高。

微软表示 EF 的工作正在进行中。所以让 等待看看需要多长时间:https://learn.microsoft.com/en-us/ef/core/what-is-new/ef-core-6.0/plan#dataverse-forming-common-data -服务


0
投票

可以使用 ClientId 和 ClientSecret 连接到 Dataverse,但我必须从 Dataverse ServiceClient 获取令牌。

var dataverseService = services.BuildServiceProvider().GetRequiredService<IDataverseService>();

services.AddDbContext<SRXDataverse>(options =>
{
    SqlConnection connection = new();
    connection.ConnectionString = dataverseConstants.SqlConnectionString;
    connection.AccessToken = dataverseService.Token;
    options.UseSqlServer(connection);
});

使用 EF Core Power Tools 进行逆向工程工作正常,它具有交互式登录支持。

© www.soinside.com 2019 - 2024. All rights reserved.