The default database
You have created your first project ASP.NET MVC. You can run it through Visual Studio. The site is fully functional and you can register a new user and log in. If you can register and access means “below” the site is already a database. To know where the database and which tables are present for user management, open in Visual Studio, SQL Server Object Explorer and you will see your database under
LocalDB – DefaultConnection
DefaultConnection is the name of the connection string used by your application to connect to the database. If you list the contents of Tables, you see the tables that manage users. If you have created the site using the Framework 4.5.1 or 4.5.2 these tables are 6.
Our SQL Server database
We do not want to work on the default database, but on a SQL Server database on our local machine or network. Create a SQL Server database somewhere. Now we need to connect our website to this database. Open the web.config file and look for the connectionStrings tag. Replace the connection string with a valid connection to your SQL Server database (you will find the connection strings on the Internet). Let the tag name to “DefaultConnection”. Launch the application through Visual Studio.
This is a new database then the user you created before the default database, does not exist here. You must re-register and, at this point, you need to log in. If you now check the contents of your SQL Server database (with Visual Studio SQL Server Object Explorer or with SQL Server Management Studio) you will see that we are also here 6 tables that allow the user management. Created by the site itself.
In your project, in fact, you can find the model tables that allow the user management (in the Models directory), and your site, seeing that the database did not exist any tables, has created them for you. Very comfortable.
From here on, you will create your models, that is, the containers of your data and the site will always attempt to create the tables related to you. This is not an easy process because it does not allow you errors or second thoughts as you create your model. It ‘better to say to the site not to stay from now on to check the consistency of the model – table: you will build your hand models and then your tables of SQL Server. To communicate this to the site, open the file Global.asax.cs, and in Application_Start () function, add this line:
Database.SetInitializer <YourSite.Models.ApplicationDbContext> (null);
Where ApplicationDbContext is the name of the class that connects to the database using the DefaultConnection string. Find this class in the project.