سؤال

I'm creating a MVC 5 web application with EF 6 Code first. Now it creates a database in the App_Data folder. I want to publish the website to an Azure website. Because this is only the test version of the website, I don't want to pay for it. It will only visited a couple of times a month until it is in production.

Is it possible to run the database something like an access database file? I thought that some kind of functionality existed. I thought the name was SQL Server Compact Edition? But how does it works?

I also thought that you could create a free 20MB sql server database. See this link of the pricing page. Search for 20 in your browser. http://azure.microsoft.com/en-us/pricing/details/web-sites/ I don't see that option.

Any ideas would be welcome!

هل كانت مفيدة؟

المحلول 2

I found the 20Mb free SQL Server option. I still had a website in my subscription that was stopped. When I deleted that, no website or database was there in my subscription anymore. I then created a new website via the custom website option in the azure portal. I then could select (in the wizard) a free 20 MB SQL Server database.

I uploaded my MVC application and the Code First created my database automatically. I don't know why the option wasn't showing up before but now it works.

نصائح أخرى

Yes, you just have to right click and include in your project.

I write an article for this in Chinese, and this is the English version I found.

Solution for free SQL Server in Azure:

  1. Install two nuget: EntityFrame.SqlServerCompact & Microsoft SQL Server Compact Edition

  2. Put SQL database file (.sdf/.mdf) in APP_Data folder

  3. Put connection string like this to use it:

    <add name ="DefaultConnection" connectionString ="Data Source=|DataDirectory|CompactDB.sdf" providerName ="System.Data.SqlServerCe.4.0" />
    
  4. Publish full project include above SQL database file to AzureWebsites.

  5. It work well and is totally free.

There's no free version of the SQL Database service. What you may have read is that there's a 1 year free 20MB MySQL database available.

When you're saying that a database it created in the App_Data folder, this uses SQL Server Compact (see Maresh's links) and that is free.

If you want to connect on premise database you need to setup azure virtual network. See the codeproject article

http://www.codeproject.com/Articles/261063/Azure-Virtual-Network-Connecting-Local-Database

there is some alternative way using azure service bus.

http://www.bradygaster.com/post/windowsazurewebsites-onprem-servicebus

Another option would be sql server compact edition.

http://msdn.microsoft.com/en-us/data/ff687142.aspx

see below link also

Support for SQL Server Compact 4.0 on Azure

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top