模型驱动应用导航

已完成

模型驱动应用的一个重要方面是数据模型以及不同表之间的关联方式。 本部分介绍了这些关系可以如何简化数据导航,并允许用户查看:

  • 涉及员工的事故。

  • 在特定位置发生的事故。

  • 所有事故的列表。

由于之前已在数据建模模块建立了表关系,所以可以找到上述信息的相关记录。 在本单元中,我们将学习如何使用模型驱动应用中的相关视图查找相关记录。

使用模型驱动应用创建新记录

要观察应用的运行情况,要先用它来创建新记录:

  1. 解决方案下,找到并选择事故跟踪,然后选择事故跟踪应用程序模型驱动应用。 从命令栏菜单中选择播放

  2. 选择事故跟踪下的员工,然后在命令栏中选择 + 新建

    这一步将引导您进入您在上个单元修改的主窗体。 在后续步骤中,您需要创建两个新员工。

  3. 使用以下信息创建第一个新员工:

    • EmployeeName - Renata Hall

    • EmployeeDOB - 1996 年 8 月 15 日(输入日期时,选中字段内部,可手动输入日期,也可通过日历选择)

    • EmployeeEmail - rhall@contoso.com

  4. 请注意,您必须在上传图像之前创建记录。 选择保存,然后选中选择文件,添加新员工的照片文件。

    EmployeePicture - 选择任何照片,然后选择保存并关闭

  5. 使用以下信息创建另一个新员工:

    • EmployeeName - Nathan Rigby

    • EmployeeDOB - 7/15/1999

    • EmployeeEmail - nrigby@contoso.com

  6. 选择保存,然后添加新员工照片文件。

    EmployeePicture - 选择任何照片。

  7. 创建一个新位置。 选择“事故跟踪”下的位置,选择 + 新建,然后添加以下信息:

    • LocationName - Contoso East

    • LocationCountry - 美国

  8. 选择保存并关闭

  9. 创建新的事故类型。 选择事故类型,选择 + 新建,然后添加以下信息:

    • AccidentName - 头部创伤

    • AccidentSeverity - 5

  10. 选择保存并关闭

  11. 创建一个新事故。 从应用中选择事故,选择 + 新建,然后添加以下信息:

    • LocationId - 从下拉菜单中选择 Contoso East

      提示

      在下拉菜单中按 Enter 键,可看到包含名称的位置表,而不是只能看到 ID。 其他输入字段也是一样。 在输入字段空白的情况下,按 Enter 键会显示可用选项列表。

    • AccidentTypeId - 从下拉菜单中选择头部创伤

    • AccidentDate - 10/1/2022

    • AccidentDescription - 两名员工跌倒,造成严重创伤。

  12. 保存记录。 请注意,保存后,在涉及的员工下,您将看到子网格 EmployeeTable 的视图。 接下来选择添加现有员工...,将一些员工添加到此事故中。

    新事故窗体的屏幕截图,其中突出显示了四个输入字段和“保存”按钮。

  13. 在“查找记录”弹出窗口中(请记住,您可以在“搜索”字段中按 Enter,以显示所有记录),选择与 Renata Hall 和 Nathan Rigby 相对应的员工 ID。 可以修改此“查找记录”视图,加入实际员工姓名,但我们不会在本练习中执行此操作。 然后选择添加,将这些员工添加到活动中。 如果您选择了错误的员工,可以选择“涉及的员工”表右上角的更多命令省略号,针对所选员工选择删除选项。

  14. 现在,您应该可在输入的事故中看到,涉及的员工下列出两名员工。 选择保存并关闭完成输入。

在本部分,您将了解如何在应用中导航,以查找相关数据的信息。 此前,您已在表之间建立了关系,由本可以简化这一流程。

您可在 EmployeeTableAccidentTable 之间建立多对多关系,因为很多事故可以涉及多名员工。 在本应用场景下,您要查看 Renata Hall 所涉及的事故。

  1. 在模型驱动应用中转到员工

  2. 选择 Renata Hall 的记录。

  3. 选择相关 > AccidentTables。 您将跳转至列有 Renata Hall 所涉及事故的视图。

  4. 选择任何记录以调出事故详细信息。

您还可以从位置 > 相关 > AccidentTables 完成这一相关操作,查看在该位置发生的所有事故。 原因在于上个模块,您在 LocationTableAccidentTables 之间建立了一对多关系。 利用同一概念,您可使用相关操作查看属于特定事故类型的事故。 如果表之间存在关系,则这些操作属于模型驱动应用中的标准操作。

现在您已了解了在应用中从一个表导航到另一个表是多么方便,让我们来看看如何在应用中修改视图。