我有一个稍微过度设计的代码,需要将 DataContext
与 SqlConnection
一起使用。 This MSDN article说
If you provide an open connection, the DataContext will not close it. Therefore, do not instantiate a DataContext with an open connection unless you have a good reason to do this.
在我的代码中,我将有效地拥有这个:
using( var connection = new SqlConnection( connectionString ) ) {
connection.Open();
// some action
using( var context = new DataContext( connection ) ) {
//some action with the context object
}
//more action with the connection
}
对我来说它看起来不错 - 当外部 using
崩溃时连接将关闭。然而,有一种说法是我不应该这样做。
上面的代码片段是否正确地同时使用了这两个类?我应该期待任何问题吗?
最佳答案
你的意图应该是保持连接存活,并将连接传递给所有方法,在开始时打开它,在结束时关闭它,以提高性能,这很好,但看起来很麻烦。并且“连接”将被传递,甚至被业务逻辑层引用。
也许您应该找到更好的方法。 :)
关于c# - 如何同时使用 SqlConnection 和 DataContext?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13935665/