实体框架不会将数据保留在数据库

时间:2016-06-01 06:11:13

标签: c# entity-framework

在这里,我有一个表单,它返回一个VALID客户端,我尝试将其添加到我的localDatabase和saveChanges(),但在关闭应用程序后,数据不会保留在数据库中。

FacturationAppContext db;
public Form1()
{
    InitializeComponent();
    db = new FacturationAppContext();    
}

private void addNewClient(object sender, EventArgs e)
{
    AddClient frmAdd = new AddClient(); 
    frmAdd.ShowDialog(); //form that returns a valid Client

    if (frmAdd.newClient != null)
    {
            db.Clients.Add(frmAjouter.newClient);                  
            db.SaveChanges(); 
    }
}

即使直接在Method中创建客户端,关闭应用程序后数据(客户端)也不会保留在数据库中。

编辑:这是我的连接字符串:

<connectionStrings>
<add name="FacturationAppContext" connectionString="metadata=res://*/Model1.csdl|res://*/Model1.ssdl|res://*/Model1.msl;provider=System.Data.SqlClient;provider connection string=&quot;data source=(LocalDB)\MSSQLLocalDB;attachdbfilename=|DataDirectory|\CycloneFacturation.mdf;integrated security=True;connect timeout=30;MultipleActiveResultSets=True;App=EntityFramework&quot;" providerName="System.Data.EntityClient" />

谢谢,查尔斯

1 个答案:

答案 0 :(得分:0)

尝试:

 private void addNewClient(object sender, EventArgs e)
        {
            AddClient frmAdd = new AddClient();
            frmAdd.ShowDialog(); //form that returns a valid Client
            using (db = new FacturationAppContext())
            {
                if (frmAdd.newClient != null)
                {
                    db.Clients.Add(frmAjouter.newClient);
                    db.SaveChanges();
                }
            }

        }

使用

的上下文