小编sql*_*cdr的帖子

如果我使用没有控制器的 Razor Pages,如何实现 ViewModel

或者我需要使用控制器吗?我有一个 Movies 类、一个 Genres 类和一个 Media 类,我需要将它们合并到模型视图中,以便我可以访问 Razor 页面上的多个模型。我看过很多关于模型-视图-视图模型模式的文档,但它们似乎都围绕着使用控制器。

ViewModel 类,位于名为“ViewModel”的单独文件夹中

namespace MyMovies.Models
{
    public class MoviesModelView
    {
        public List<Movies> Movies { get; set; }
        public List<Media> Media { get; set; }
        public List<Genres> Genres { get; set; }
        public List<TitleType> TitleType { get; set; }

    }
}
Run Code Online (Sandbox Code Playgroud)

我的流派模型的示例。我的其他课程(例如媒体、电影)类似,当然它们有不同的领域。

namespace MyMovies.Models
{
    public class Genres
    {
        [Key]
        public byte GenreID { get; set; }
        public String GenreName { get; set; }
        public String ImageURL { get; set; }
    }
} …
Run Code Online (Sandbox Code Playgroud)

t-sql asp.net mvvm viewmodel razor-pages

8
推荐指数
1
解决办法
6153
查看次数

IEnumerable&lt;Movies&gt; 不包含 FirstOrDefaultAsync() 的定义

这是我的错误消息:“IEnumerable”不包含“FirstOrDefaultAsync”的定义,并且找不到接受“IEnumerable”类型的第一个参数的可访问扩展方法“FirstOrDefaultAsync”(您是否缺少 using 指令或程序集引用? )

我已执行以下操作,但错误仍然存​​在:

  1. 我没有忘记使用 await,根据此链接:任务不包含“FirstOrDefault”的定义

  2. 我引用了 Sytem.Core 并导入了 System.Linq 和 System.Data.Entity。(System.Linq 不明确/灰色,因此未使用),根据此链接:DbSet 不包含 FirstOrDefault 的定义?

这是我的 .cshtml.cs 代码,其中正在生成错误(第 34 行):

using System.Collections.Generic;
using System.Linq;
using System.Data.Entity;
using System.Threading.Tasks;
using Microsoft.AspNetCore.Mvc;
using Microsoft.AspNetCore.Mvc.RazorPages;
using Microsoft.EntityFrameworkCore;
using Movies.Models;

namespace Movies.Pages.MediaDetails
{
    public class DetailsModel : PageModel
    {
        private readonly Movies.Models.MoviesContext _context;

        public DetailsModel(Movies.Models.MoviesContext context)
        {
            _context = context;
        }

        MovieDataAccessLayer objmovie = new MovieDataAccessLayer();

        public Movies Movies { get; set; }

        public async Task<IActionResult> OnGetAsync(byte? id)
        {
            if …
Run Code Online (Sandbox Code Playgroud)

t-sql asp.net ienumerable async-await razor-pages

0
推荐指数
1
解决办法
5349
查看次数