在屏幕上使用参数化查询

在本课中,您将学习如何使用屏幕上参数化的查询来筛选数据。

使用参数化查询

在上一课中,您创建了基于 CategoryID 参数筛选产品的查询。在运行时,此参数可用于将筛选器应用于包含 CategoryID 字段的其他实体。例如,您可以使用参数化查询在屏幕上显示与选定产品类别相匹配的产品列表。

参数值可以作为**“屏幕设计器”**中的属性在设计时或由用户在运行时提供。在此示例中,您将在设计时赋给值。

向屏幕添加参数化查询

  1. 在**“解决方案资源管理器”**中,双击 CurrentProductList 屏幕节点。

  2. 在**“屏幕设计器”中,单击“添加数据项”**工具栏按钮。

    此时将出现“添加数据项”对话框。

  3. 在**“添加数据项”对话框中,单击“查询”**。

  4. 在**“名称”栏中,选择 NorthwindEntitiesData.ProductsByCategory,然后单击“确定”**。

    ProductsByCategoryCollection 节点将添加到左窗格中。

  5. 在**“查询参数”**节点下,选择 CategoryID

  6. 在属性窗口,选择**“参数绑定”**和类型 CurrentProducts.SelectedItem.Category.CategoryID。

  7. 在**“屏幕设计器”中,选择“行布局|详细信息列”**节点。

  8. 单击**“添加”**并从下拉菜单中选择 ProductsByCategory

    DataGrid | ProductsByCategory 节点将出现在屏幕内容树中。

  9. 按 F5 运行应用程序并查看结果。

    当您打开 CurrentProductList 屏幕时,请注意具有相同 CategoryID 的所有产品将作为当前选定产品显示在新网格中。

详细了解

在此过程中,您可以使用在上一课中创建的参数化查询来显示产品列表。该查询将添加到现有的 CurrentProductList 屏幕。该查询的**“参数值”**属性将从屏幕上现有的 ProductCollection 中指定 CategoryID 值,并在运行时提供参数。因此,具有匹配的 CategoryID 的产品列表每次都将显示 ProductCollection 列表中选择的产品。

后续步骤

在下几节课中,您将学习如何使用菜单和命令。

下一课:创建菜单和命令

请参见

任务

如何:向查询参数提供值

如何:使用代码扩展查询

其他资源

用查询筛选数据

查询:从数据源检索信息