2010-06-30 2 views
1

보통 내가 C의 # (ASP.NET 3.5)에서 저장된 프로 시저를 실행할 때, 나는이 할 수있는 다음C#에서 저장된 proc을 어떻게 쉽게 실행할 수 있습니까?

myConnection.Open(); 

SqlCommand cmd = myConnection.CreateCommand(); 
cmd.CommandType = CommandType.StoredProcedure; 
cmd.CommandText = "myProc"; 

SqlParameter param1 = cmd.Parameters.Add("@param1", SqlDbType.VarChar); 
param1.Direction = ParameterDirection.Input; 
param1.Value = txtParam.Text; 

SqlDataReader reader = cmd.ExecuteReader(); 

는이 일을 더 좋은 방법이 있나요? 함수가 될 것처럼 proc을 호출 할 수있는 다소 다형성이있는 C# 클래스를 만드는 방법이 있습니까? (예 : Procs.myProc(param1))

+0

실제로 개발자는 여기까지 일부 추상화를 제공합니다. 대부분의 사람들 (포함되어 있음)은 래퍼 메서드를 만듭니다. 예 : 공개 목록 GetFoos (string foo, int bar) 이 메서드는 위 코드를 수행합니다 (연결 작성/처리, 매개 변수 설정 등). – RPM1984

답변

1

당신은 정말 라인의 #에 축소 할 수 있습니다 Enterprise Library.을 구현하여 코드를

+0

그리고 EntLib5 DAB를 사용하면 저장된 procs ...를 작성하면 얼마나 쉽게 만들 수 있는지에 대해 거의 질투합니다. –

0

자신 만의 도우미 클래스를 작성하여 연결 (예 : 연결 열기/닫기)을 수행하여 프로 시저와 pareameters의 이름을 전달하고 다른 이름을 얻을 수 있습니다 측면 (리더, 데이터 세트 등) 또는 그 않는 타사 도구를 사용할 수 있습니다에 대한 당신 (그리고 힙 이상) 음속과 같은 :

http://geekswithblogs.net/scottkuhl/archive/2006/12/08/100700.aspx

관련 문제