2013-05-06 4 views
1

SqlParameterCollectionAdd(SqlParameter) 방법 및 AddRange(SqlParameter[]) 방법을 갖는다. 각각은 여러 가지 과부하가 있습니다.다른 Parametercollection에 Parametercollection을 추가 할 수 있습니까?

특히 SqlCommand.Parameters은 읽기 전용이며 SqlParameterCollection이 있으면 할당 할 수 없으므로 기존 컬렉션에 추가하고 싶습니다.

지금 내 코드에서 루프있다 :

SqlCommand cmd = new SqlCommand(); 
foreach (SqlParameter param in collection) 
{ 
    cmd.Parameters.Add(param); 
} 

다른에 SqlParameterCollection을 추가하는 쉬운 내장 된 방법이 있나요이?

답변

0

절차를보다 쉽게하기 위해 확장 방법을 설정했습니다. 그러나 '진짜'방식으로, 발견되지 않은 :

(@DanielPaoliello에서 편집을 다시 제안)

public static void AddCollection(this SqlParameterCollection basic, SqlParameterCollection collection) 
{ 
    foreach (SqlParameter param in collection) 
    { 
     basic.Add(((param as ICloneable).Clone()) as SqlParameter); 
    } 
} 

을 등의 사용보다 :

cmd.Parameters.AddCollection(collection); 
관련 문제