首页 新闻 搜索 专区 学院

discuz!nt 一些方法里面为什么要使用克隆。

0
[待解决问题]

最近看了下 discuz!nt的源代码 发现里面有这样的写法。不太明白为什么要这样写。求高手指定。

        public static DbParameter[] getA(DbConnection connection, string spName)
{
if (connection == null) throw new ArgumentNullException("参数connection为空或不是对象");
using (DbConnection cloneConnection=(DbConnection)((ICloneable)(connection)).Clone())
{
......
}
}


有点不明白 上面using后面 为什么要这样写。这样写有什么好处吗。如果之下用下面的写法不也是一样的吗?

        public static DbParameter[] getA(DbConnection connection, string spName, bool includeReturnValueParameter)
{
if (connection == null) throw new ArgumentNullException("参数connection为空或不是对象");
using (DbConnection cloneConnection=connection)
{
......
}
}
yzy的主页 yzy | 菜鸟二级 | 园豆:317
提问于:2011-11-21 16:25
< >
分享
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册