首页 > 解决方案 > 找不到类型或命名空间名称“Dbset<>”(您是否缺少 using 指令或程序集引用?)

问题描述

我正在尝试在 Razor 页面中使用数据库。但是当我使用命令 dotnet run 时出现此错误:“错误 CS0246:找不到类型或命名空间名称 'Dbset<>'(您是否缺少 using 指令或程序集引用?)”这是代码:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
using Microsoft.AspNetCore.Mvc;
using Microsoft.AspNetCore.Mvc.RazorPages;
using Microsoft.Extensions.Logging;
using Microsoft.EntityFrameworkCore;

namespace myWebApp.Models
{
    public class ConnectionstringClass: DbContext
    {
        public ConnectionstringClass(DbContextOptions<ConnectionstringClass> options) :base(options)
        {

        }
        public Dbset<Reservation> Reservation {get; set;}
        protected override void OnModelCreating(ModelBuilder modelBuilder)
        {
            modelBuilder.Entity<Reservation>().ToTable("Reservation");
            
        }
    }
}

这里是包参考:

  <ItemGroup>
    <PackageReference Include="Microsoft.AspNetCore.App" Version="3.1.1"/>
    <PackageReference Include="Npgsql" Version="4.1.3.1" />
    <PackageReference Include="Npgsql.EntityFrameworkCore.PostgreSQL" Version="3.1.4" />
    <PackageReference Include="Npgsql.EntityFrameworkCore.PostgreSQL.Design" Version="1.1.1" />
    <PackageReference Include="Microsoft.EntityFrameworkCore.Tools" Version="2.0.0"/>
    <PackageReference Include="Microsoft.EntityFrameworkCore.Design" Version="2.0.0"/>
    <PackageReference Include="EntityFramework" Version="5.0.0"/>
  </ItemGroup>

 <ItemGroup>
    <DotNetCliToolReference Include="Microsoft.VisualStudio.Web.CodeGeneration.Tools" Version="2.0.0"/>
    <DotNetCliToolReference Include="Microsoft.EntityFrameworkCore.Tools.DotNet" Version="2.0.0"/>
 </ItemGroup>

标签: c#entity-frameworkentity-framework-corerazor-pages

解决方案


 public DbSet<Reservation> Reservation {get; set;}

是正确的。不是

public Dbset<Reservation> Reservation {get; set;}

推荐阅读