这里为什么要采用Clone()来生成SqlParameter[] ,而不直接返回cachedParms????????????
在学习pet shop 4.0 的SqlHepler类时候,有个地方不明白
/// <summary>
/// Retrieve cached parameters
/// </summary>
/// <param name="cacheKey">key used to lookup parameters</param>
/// <returns>Cached SqlParamters array</returns>
public static SqlParameter[] GetCachedParameters(string cacheKey) {
SqlParameter[] cachedParms = (SqlParameter[])parmCache[cacheKey];
if (cachedParms == null)
return null;
SqlParameter[] clonedParms = new SqlParameter[cachedParms.Length];
for (int i = 0, j = cachedParms.Length; i < j; i++)
clonedParms[i] = (SqlParameter)((ICloneable)cachedParms[i]).Clone();
return clonedParms;
}
这里为什么要采用Clone()来生成SqlParameter[] ,而不直接返回cachedParms????????????
------解决方案--------------------
当您的问题得到解答并完成结帖操作,CSDN将按本帖提问分数的50%,做为可用分返还给您。无满意贴不返还可用分