Tech Junkie Blog: ASP.NET Core : Add NorthwindContext To Startup Class And Create Database

Monday, August 8, 2016

ASP.NET Core : Add NorthwindContext To Startup Class And Create Database

In this post will are going to finally create the database that we have been preparing for in the last previous blog posts.  It's a two step process, first you have to add the NorthwindContext to the application in the Startup class, then you have to run the Entity Framework migration tool.

Here are the steps to create your NorthwindCafe database:

1.  Open the Startup.cs file, then type the following lines in the ConfigureServices method
 
            var connectionString = Configuration["Data:NorthwindContextConnection"];

            services.AddDbContext<NorthwindContext>(options => options.UseSqlServer(connectionString));

The line above gets the connection string from the appSettings.json file that we've created earlier. Then use the AddDbContext method in the services instance.  Dependency injection will take care of the plumbing for you.  Using lamba expression we tell the Entity Framework to use the Sql Sever provider for Entity Framework core.

Make sure you have the following namespaces in your Startup class

using NorthwindCafe.Web.Models;
using Microsoft.Extensions.Configuration;
using Microsoft.Extensions.DependencyInjection;
using Microsoft.EntityFrameworkCore;




2.  Now we can run the dotnet ef tools in the command line, first right-click on the NorthwindCafe.Web project and select "Open Command Line" → Default













3.  In the command line type dotnet ef migrations add InitialDatabase your screen should look like below












4.  Now you have to run another command to actually create the database  type dotnet ef database update to create the NorthwindCafe database in SQL Server







The first command dotnet ef migrations add InitialDatabase creates two files in the "Migrations" folder in the NorthwindCafe.Web project.  These files contains the codes for creating the database and any other subsequent migrations that you will run in the future.  Everytime you run a migration a snapshot is created with the NorthwindContextModelSnapshot
























The second dotnet ef database update command uses the migration script in Visual Studio to update the database.  After you run this command you will see that the NorthwindCafe database has been created.  The amazing thing is that the foreign key constraint has been added for us, because we used the virtual keyword to define our property in our models in this post.






























ASP.NET Core Posts:
  1. How To Create An ASP.NET Core Application From Scratch
  2. ASP.NET Core : Add jQuery, Bootstrap, AngularJS Using bower.json
  3. Enable ASP.NET Core to Serve Static Files
  4. Enable MVC On ASP.NET Core Application
  5. ASP.NET Core : Create Our First Controller and View  
  6. ASP.NET Core : Adding The Default View With _ViewStart.cshtml
  7. ASP.NET Core : Create A Responsive Layout With Bootstrap
  8. ASP.NET Core : Adding Font-Awesome For Northwind Cafe Navigation Icons
  9. ASP.NET Core : Add .json Configuration Files With Microsoft.Extensions.Configuration Library
  10. ASP.NET Core : Entity Framework Core Models For Northwind Cafe
  11. ASP.NET Core : Create The NothwindContext ( EntityFrameworkCore )
  12. ASP.NET Core : Configure project.json File To Support Entity Framework Core
  13. ASP.NET Core : Add NorthwindContext To Startup Class And Create Database
  14. ASP.NET Core: Seeding The NorwindCafe Database
  15. ASP.NET Core: Add Logging To The NorthwindCafe Application

1 comment:

  1. Thank you for great tutorial. Good to know how to make a project from scratch, thanks to it I can see how it exactly work.
    Looking forward to next updates :).

    ReplyDelete