You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

ASP.NET Core 6 Web API中MovieContext.Movies访问级别错误求助

解决“MovieContext.Movies' is inaccessible due to its protection level”错误

问题原因

MovieContext类中的Movies属性未指定访问修饰符,C#默认成员访问级别为private,导致外部类MoviesController无法访问该属性,触发权限错误。

修复方法

在MovieContext的Movies属性前添加public访问修饰符,使其对控制器可见:

修改后的MovieContext.cs代码:

using Microsoft.EntityFrameworkCore;
namespace AspNetCoreWebApi6.Models
{
    public class MovieContext : DbContext
    {
        public MovieContext(DbContextOptions<MovieContext> options)
            :base(options)
        {
        }
        // 添加public修饰符
        public DbSet<Movie> Movies { get; set; }
    }
}

补充说明

C#中,类的字段、属性等成员如果不指定访问修饰符,默认是private,仅能在类内部访问。如果需要让外部类(如控制器)访问,必须显式设置public(跨程序集访问)或internal(同一程序集内访问)。

内容的提问来源于stack exchange,提问作者Muhammad Bilal

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.20 08:24:55