Razor 页面的即席查询

Hui Liu-MSFT 38,331 信誉分 Microsoft 供应商
2024-04-17T08:05:02.5766667+00:00

嗨,朋友们,我想在我的 .Net 5 Razor 页面或组件中运行一些临时查询。我想知道我应该将查询逻辑放在我的模型中还是其他地方?我不知道对 webapi 进行 linq 查询调用是否有效,我读到我应该在我的模型中使用方法或函数并使用 Linq to Entities。

Note:此问题总结整理于:Ad hoc queries for Razor Pages

Entity Framework Core
Entity Framework Core
实体框架数据访问技术的轻量型、可扩展、开源、跨平台版本。
37 个问题
0 个注释 无注释
{count} 票

接受的答案
  1. Jiale Xue - MSFT 32,076 信誉分 Microsoft 供应商
    2024-04-17T08:35:03.9266667+00:00

    我想在我的 .Net 5 Razor 页面或组件中运行一些临时查询。我想知道我应该将查询逻辑放在我的模型中还是其他地方?

    对于 Razor 页面,它有一个后端 PageModel 类文件,例如:

    Index.cshtml:包含 html 元素

    156067-image.png

    Index.cshtml.cs文件是后端 PageModel 类文件,可以在 OnGet、OnPost 或其他 Page 处理程序中运行即席查询,然后在页面上显示结果。

    在以下代码中,它将使用 EF core 和 DbContext (_context) 执行 CURD 操作。您可以将其更改为临时查询。

    156112-image.png

    有关详细信息,请参阅 ASP.NET Core 中的 Razor Pages 简介

    对于 Razor 组件,可以在块中运行即席查询,并使用组件的 OnInitialized 方法或其他操作方法。请参阅 ASP.NET Core Razor 组件ASP.NET Core Blazor 数据绑定ASP.NET Core Blazor 事件处理@code

    此外,我建议您可以参考官方教程(注意在示例中,它使用 EF 核心来管理数据,它将通过 _context 查询或编辑数据),然后您可以清除以知道在哪里运行查询语句。

    如果对 webapi 进行 linq 查询调用是有效的,并且我读到我应该在我的模型中使用方法或函数并使用 Linq to Entities。

    您的意思是从 webapi 获取数据后,是否要使用 LINQ 查询来筛选数据?如果是这样的话,你可以这样做,但最好直接调用 WebAPI 并获取所需的值,在这种情况下,不需要使用 linq 过滤器。

    对于,我认为应该是 PageModel,对吧?如果是这样的话,从上面的文档中,我们可以看到页面模型是用来绑定页面上的数据的。models


    如果答案是正确的解决方案,请点击“接受答案”并投赞成票。如果您对此答案有其他疑问,请点击“评论”。

    注意:如果您想接收此线程的相关电子邮件通知,请按照我们文档中的步骤启用电子邮件通知。

    0 个注释 无注释

0 个其他答案

排序依据: 非常有帮助