相关疑难解决方法(0)

在using语句中使用各种类型(C#)

因为C#using语句只是try/finally {dispose}的语法糖,为什么它只接受多个对象,如果它们属于同一类型?

我不明白,因为他们需要的只是IDisposable.如果所有这些都实现了IDisposable,它应该没问题,但事实并非如此.

具体来说,我习惯写作

using (var cmd = new SqlCommand())
{
    using (cmd.Connection)
    {
        // code
    }
}
Run Code Online (Sandbox Code Playgroud)

我压缩成:

using (var cmd = new SqlCommand())
using (cmd.Connection)
{
    // code
}
Run Code Online (Sandbox Code Playgroud)

我想进一步说明:

using(var cmd = new SqlCommand(), var con = cmd.Connection)
{
    // code
}
Run Code Online (Sandbox Code Playgroud)

但我不能.有人会说,我可能写道:

using((var cmd = new SqlCommand()).Connection)
{
    // code
}
Run Code Online (Sandbox Code Playgroud)

因为我需要处理的只是连接而不是命令,但除此之外.

c# types using

29
推荐指数
3
解决办法
9096
查看次数

如何在运行ASP.NET应用程序的整个时间内保持SqlConnection处于打开状态?

在ASP.NET中与数据库交互的例子我总是看到

using ( SqlConnection con = new SqlConnection(ConfigurationManager.ConnectionStrings["MyDatabase"].ConnectionString) )
{
   // ... Do some stuff
}
Run Code Online (Sandbox Code Playgroud)

但我想知道,我不应该一直连接吗?为什么我想要打开和关闭连接所涉及的所有开销是没有意义的.不con应该像static我的模特的成员?

c# sql-server asp.net asp.net-mvc

2
推荐指数
1
解决办法
1009
查看次数

标签 统计

c# ×2

asp.net ×1

asp.net-mvc ×1

sql-server ×1

types ×1

using ×1