如何在 Razor Pages Web 应用程序中使用 ViewModel

How to use ViewModel in a Razor Pages web app

我有一个模型 class ProjectDepo 定义了 3 打属性。这已在具有这些字段的数据库中创建了一个 table。我使用脚手架来创建 iCRUD Razor 页面。所有字段都正确存在并且正确填充数据库 table。

我只想创建一个 iCRUD 脚手架,其中一些 fields/properties 并过滤结果。我会使用 ViewModel 仅选择那些特定的属性并查询以过滤我的结果以作为我的脚手架的基础。

创建 ViewModel class 后,如何指定这些属性来自哪个模型 class?在哪里可以添加 SQL 语句来过滤结果?

我搜索过但没有找到合适的条款。一切都是关于将 ViewModel 绑定到 View,我正在尝试将数据获取到 ViewModel。

感谢您的帮助。 查克

(这是我的整个 ViewModel class,缩写)

public class RequestReporterViewModel

{
    //All fields are from ProjectDepo class
    public int Id { get; set; }  
    public string OrderingPOCName { get; set; }...
}

如果您想将绑定属性从视图映射到模型,您可以使用 AutoMapper,AutoMapper 是这种状态的最佳实践。

以你的例子为例:

Mapper.Map(RequestReporter, RequestReporterViewModel, typeof(RequestReporter), typeof(RequestReporterViewModel));

(首先,我收到通知,有人不喜欢我选择不大写 "sql";我使用了括号,有额外的空格并在我的问题中列出了 class。绝对 NONE 其中使我的问题更容易或更难理解。"suggested" 和 "approved" 编辑根本没有帮助解决问题。他们没有提供解决方案,没有问题更清楚——他们只让问题符合建议者的格式。) (//咆哮结束)

无论如何,这个问题可以关闭,因为我正在寻找一种无需创建控制器即可处理此 ViewModel 的方法。

我会在其他地方使用不同的搜索条件继续搜索答案。

感谢所有花时间阅读我的问题的人,非常感谢。

查克