I'm start to learn EF now. What I want to do is use EF code first create new tables in SQL Azure.
Here is my code:
namespace WebApplication2
{
public class Blog
{
public int UserName { get; set; }
public int ID { get; set; }
}
public class BlogContext : DbContext
{
public DbSet<Blog> Blogs { get; set; }
public BlogContext() : base("MYEF")
{
}
}
}
Code behind:
protected void Page_Load(object sender, EventArgs e)
{
using (var db = new BlogContext())
{
var blog = new Blog { UserName = 456 };
db.Blogs.Add(blog);
db.SaveChanges();
}
}
Web.config
:
<connectionStrings>
<add name="TestDBContext"
connectionString="Server=tcp:mydb.database.windows.net,1433;Database=MYEF;User ID=[Username];Password=[MyPassword];Trusted_Connection=False;Encrypt=True;PersistSecurityInfo=True"
providerName="System.Data.SqlClient" />
</connectionStrings>
When I check my SQL Azure DB, no table has been created, EF still create the table MYEF
in the default SQL Server Express database.
Has anyone done this successfully?
You should pass the connection string name to the base constructor of your BlogContext
like this
public BlogContext()
: base("TestDBContext")
{
}
http://msdn.microsoft.com/en-us/library/gg679467(v=vs.103).aspx
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With