我可以使用 Azure SQL 创建模型驱动的应用吗

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

是否可以创建模型驱动的应用程序并让 CRUD 操作直接连接到 Azure SQL Server?

microsoft-dynamics powerapps dynamics-365
2个回答
0
投票

您可以创建一个直接连接到 Azure SQL 的 Canvas 应用程序 你可以制作一个模型驱动的应用程序,但你需要将 Dataverse 与 SQL 数据库集成

您还可以看看虚拟表是否是一个可行的选择。

文档可在此处获得 https://learn.microsoft.com/en-us/power-apps/developer/data-platform/virtual-entities/get-started-ve

从上面的链接,这里有一些一般信息: (TL;DR - 虚拟表可能在模型驱动的应用程序中为您工作,请参阅链接以了解有关它们是什么、它们如何工作以及限制的详细信息)

虚拟表是 Dataverse 平台中表的定义,没有 Dataverse 数据库中创建的记录的关联物理表。相反,在运行时,当需要记录时,会从相关的外部系统动态检索其状态。每个虚拟表类型都与一个虚拟表数据提供者和(可选)来自关联虚拟表数据源的一些配置信息相关联。

Dataverse 附带以下数据提供者:

  • OData v4 提供程序包含在服务中,默认安装。此提供程序支持创建、读取(检索、检索多个)、更新和删除操作。
  • AppSource 提供 Azure Cosmos DB(以前称为 Microsoft Document DB)提供程序。

如果你的外部数据源找不到数据提供者,你可以开发一个自定义的虚拟表数据提供者;有关详细信息,请参阅虚拟表数据提供程序。自定义虚拟表数据提供程序现在支持完整的 CRUD 操作。开发者可以实现插件,并使用插件注册工具为每个支持虚拟表的 CRUD 操作注册它们。

以下是必须考虑的虚拟表的限制。

  • 仅支持组织拥有的表。不支持应用于用户拥有的表的安全过滤。可以根据用户的安全角色为各个用户打开或关闭对虚拟表数据的访问。不支持字段级安全性。
  • 必须可以将外部数据建模为 Dataverse 表。这意味着:
    • 外部数据源中的所有表必须具有关联的 GUID 主键。
    • 所有表属性必须表示为 Dataverse 表列。您可以使用表示文本、数字、选项、日期、图像和查找的简单类型。
    • 您必须能够对 Dataverse 中的任何表关系进行建模。
    • 虚拟表上的列不能计算或汇总。任何所需的计算都必须在外部完成,可能在数据提供者内部或由数据提供者指导。
    • 虽然您可以添加虚拟表列作为在网格或其他 UI 视图上的查找,但您不能基于此虚拟表查找列进行筛选或排序。
  • 不支持审计
  • 虚拟表不支持搜索功能,因为它们不保留数据。
  • 虚拟表不支持图表和仪表板。
  • 无法为队列启用虚拟表。
  • 虚拟表不支持值的离线缓存。
  • 虚拟表不能代表活动,也不支持业务流程。
  • 创建后,虚拟表不能更改为标准(非虚拟)表。反之亦然:标准表无法转换为虚拟表。
  • 在 Retrieve 和 RetrieveMultiple 查询中选择属性将不会被应用,因为所有属性都将被返回

0
投票

我不同意亚历克斯的建议。您基本上是在询问是否可以将模型驱动的 UI 连接到不是 Dataverse 的其他 SQL 服务器。简短的回答是“不”,因为这比从头开始编写要花费更多,而且您将绕过整个安全模型。如果您打算完全控制 SQL 中的数据,那么只需为本地购买 D365,您就可以从那里使用 SQL 服务器做任何您想做的事。

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