EF Code首先存在SQL Azure数据库

时间:2012-03-23 12:36:55

标签: .net sql entity-framework azure ef-code-first

我使用Code First在我的本地服务器上成功创建了数据库,并将其迁移到 Azure,现在我想使用Azure连接字符串和我现有的POCO clases连接到该数据库。

我的连接字符串:

<add name="CijenolomciContext" connectionString="Data Source=*.database.windows.net;Initial Catalog=NewCijenolomci;Persist Security Info=True;User ID=Bip*;Password=**;MultipleActiveResultSets=False&quot;" providerName="System.Data.EntityClient" />

但是这段代码碰巧在服务器上什么也没做:

Item i = new Item();
            i.Name = "Cranberry";
            i.OldPrice = new decimal(25.99);
            i.NewPrice = new decimal(14.99);
            i.SaleStarts = DateTime.Parse("2012-01-21");
            i.CategoryID = 1;
            context.Items.Add(i);
            context.SaveChanges();

如何成功添加它?

修改 这种方法恰好修改了我的本地数据库,而不是服务器数据库。

2 个答案:

答案 0 :(得分:1)

您似乎没有连接到Azure数据库。我希望连接字符串更像这样。

Server=tcp:[serverName].database.windows.net;Database=myDataBase;User ID=[LoginForDb]@[serverName];Password=myPassword;Trusted_Connection=False;Encrypt=True;

Use 'username@servername' for the User ID parameter.

请参阅Connection Strings for SQL Azure

答案 1 :(得分:0)

行。这里是。在DbContext中,我继承了基础构造函数:

 public CijenolomciContext()
        : base(*database name*)
    {
        //additional logic
    }

尽管我在App.config添加了我的连接字符串,但他总是连接到本地。

我硬编码了Connection字符串,只需将它添加到构造函数中即可。现在它有效! :)