I've developed website based on .NET MVC4. I used simple membership .NET built in forms authentication. I saw that the application uses some kind of MS database, but I don't really know what kind. I want to upload my site to server and publish it. Do I need to install some kind of database on the server? or I'll just need to upload the application and it will create the database on the server automatically?
Thanks.
The database created by default when using the MVC 4 Internet template is a SQL Server Express LocalDB, which is really intended for development and testing and not for deployment. Although I think some people do use it in production. If the correct components are on the server you are deploying to it will automatically create this database. If you look at the web.config generated by the template it looks something like this.
<add name="SimpleSecurityConnection" connectionString="Data Source=(LocalDb)\v11.0;Initial Catalog=aspnet-SeedSimple-20130125152904;Integrated Security=SSPI;AttachDBFilename=|DataDirectory|\aspnet-SeedSimple-20130125152904.mdf" providerName="System.Data.SqlClient" />
The name for the configuration string to use is defined in the WebSecurity.InitializeDatabaseConnection method as the first parameter. You will notice that the data source starts out with "(LocalDb)" which tells the runtime to use a LocalDB instance. I would recommend installing something like SQL Server Express or a full blown SQL Server instance on the server and changing the connection string to point to it instead for production.