2

我有一些代码可以使用 LINQ 自动删除和更新数据库。

KezberPMDBDataContext db = new KezberPMDBDataContext();
if (!db.DatabaseExists())
{
    db.DeleteDatabase();
}
db.CreateDatabase();

但是,它有时会由于打开的连接而失败。在 SQL Management Studio 中,我可以强制它终止连接,但我在 LINQ 中看不到这样的选项。

有谁知道这样做的方法?

4

2 回答 2

4

DataContext 应始终“销毁”或处置,因此最好在 using 语句中使用 Context 对象:

 using(KezberPMDBDataContext db = new KezberPMDBDataContext())
 {
    if (!db.DatabaseExists())
    {
        db.DeleteDatabase();
    }
    db.CreateDatabase();
  }

这将在使用后自动处理上下文。

要直接处理它,请调用该方法:

 db.Dispose();
于 2013-04-23T14:15:40.867 回答
-2

您可以使用一些代码来关闭 LINQ 中 sql server 的当前连接

DBDataContext db= new DBDataContext ();

完成您的操作后,您可以处理数据库

db.Dispose();
于 2014-09-10T05:55:45.707 回答