.Net核心控制器不能用于依赖注入

时间:2016-12-06 16:49:29

标签: asp.net-core asp.net-core-webapi

我目前正试图通过这篇文章制作一个项目 http://social.technet.microsoft.com/wiki/contents/articles/36340.create-a-web-api-application-in-asp-netcore.aspx#Introduction

除了一件事之外,一切正常

我有一个MoviesController类,它有带DbContext参数的构造函数

    public class MoviesController : Controller
{
    private readonly MovieDbContext _context;

    public MoviesController(MovieDbContext context)
    {
        _context = context;
    }

这是Startup类的方法,必须解决此注入

        public void ConfigureServices(IServiceCollection services)
    {
        services.AddDbContext<MovieDbContext>(options => options.UseSqlServer(Configuration.GetConnectionString("DefaultConnection")));

        // Add framework services
        services.AddMvc();

    }

问题是每次我调用此控制器时,浏览器都会出现以下错误: HTTP 500错误 这很奇怪......网站无法显示此页面,没有其他信息。 当我从c-tor中删除参数时,它运行良好。 MovieDbContext类

public class MovieDbContext : DbContext
{
    public DbSet<Movie> Movies { get; set; }
    public MovieDbContext(DbContextOptions<MovieDbContext> options) : base(options)
    { }
}

希望得到你的帮助

修改

appsettings.json

{
    "ConnectionStrings": { 
    "DefaultConnection": "Server=(localdb)\\mssqllocaldb;Database=movieDB;Trusted_Connection=True;MultipleActiveResultSets=true"
    },

  "Logging": {
    "IncludeScopes": false,
    "LogLevel": {
      "Default": "Debug",
      "System": "Information",
      "Microsoft": "Information"
    }
  }
}

0 个答案:

没有答案