Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何在控制器中获取数据库上下文_C#_.net_Asp.net Core_Asp.net Core Mvc_Asp.net Mvc Controller - Fatal编程技术网

C# 如何在控制器中获取数据库上下文

C# 如何在控制器中获取数据库上下文,c#,.net,asp.net-core,asp.net-core-mvc,asp.net-mvc-controller,C#,.net,Asp.net Core,Asp.net Core Mvc,Asp.net Mvc Controller,我一整天都在试图在默认MVC6项目的ManageController.cs中获取ApplicationDbContext 我上网搜索了很多次,但似乎没有人有和我一样的问题。这可能很简单,但我想不出来。 有人有主意吗 以下是我尝试过的: IServiceProvider service = new IServiceProvider(); var _context = service.GetService<ApplicationDbContext>(); IServiceProvide

我一整天都在试图在默认MVC6项目的
ManageController.cs
中获取
ApplicationDbContext

我上网搜索了很多次,但似乎没有人有和我一样的问题。这可能很简单,但我想不出来。 有人有主意吗

以下是我尝试过的:

IServiceProvider service = new IServiceProvider();
var _context = service.GetService<ApplicationDbContext>();
IServiceProvider服务=新的IServiceProvider();
var_context=service.GetService();

使用构造函数注入:

public class ManageController
{
    private readonly ApplicationDbContext _context;

    public ManageController(ApplicationDbContext context)
    {
        _context = context;
    }
}

然后,您可以在控制器方法中使用
\u上下文
对象。文档部分提供了更多信息。

我正在使用Visual Studio 2015 Update 3。Visual Studio的未来版本可能不需要以下某些步骤

  • 创建ASP.NET Core(使用.NET Core)项目,但不进行身份验证

  • 在PackageManager控制台中,依次执行以下各项

  • 将以下内容添加到
    “工具”:{}
    project.json
    中定义
  • 将以下内容添加到
    appsettings.json
  • 将以下内容添加到
    startup.cs
    ConfigureServices
    services.AddMvc()前面
  • string connection=Configuration.GetConnectionString(“DefaultConnection”);
    services.AddDbContext(options=>options.UseSqlServer(connection));
    
     Install-Package Microsoft.EntityFrameworkCore.SqlServer
     Install-Package Microsoft.EntityFrameworkCore.Tools –Pre
     Install-Package Microsoft.VisualStudio.Web.CodeGeneration.Tools -Pre
     Install-Package Microsoft.VisualStudio.Web.CodeGenerators.Mvc -Pre
    
    "Microsoft.EntityFrameworkCore.Tools": "1.0.0-preview2-final",
    "Microsoft.VisualStudio.Web.CodeGeneration.Tools": "1.0.0-preview2-final",
    
    "ConnectionStrings": {
    "DefaultConnection": "Server=(localdb)\\mssqllocaldb;Database=YourDatabaseName;Trusted_Connection=True;MultipleActiveResultSets=true"
    },
    
    string connection = Configuration.GetConnectionString("DefaultConnection");
    services.AddDbContext<YourContextName>(options => options.UseSqlServer(connection));