2014-05-14 6 views
0

저장 프로 시저에 매개 변수를 전달 : 여기내가이 저장 프로 시저에 매개 변수를 전달하고 싶은

ALTER PROCEDURE [USP_SelectProject] 
-- Add the parameters for the stored procedure here 

@ProjectNumber as int 

AS 
BEGIN 
if @ProjectNumber is null 
begin 
select * from tbl_projects 
end 
else 
begin 
SELECT * from tbl_projects where ProjectID = @ProjectNumber 
end 
End 

하면 .NET 코드 나는 다음과 같은 오류가 발생하고

SqlConnection PTConn = new SqlConnection(ConfigurationManager.ConnectionStrings["Project_Tracker"].ConnectionString); 
SqlCommand PTCmd = new SqlCommand("USP_SelectProject", PTConn); 
PTCmd.CommandType = CommandType.StoredProcedure; 
SqlDataAdapter PTda = new SqlDataAdapter(PTCmd); 
PTda.SelectCommand.Parameters["@ProjectNumber"].Value = DBNull.Value; 
DataSet PTds = new DataSet(); 
PTda.Fill(PTds); 

     GridView1.DataSource = PTds; 
     GridView1.DataBind(); 

입니다 :는이 매개 변수 이름 '@ProjectNumber'가 포함 된 SqlParameter가 여기에 포함되지 않습니다.

답변

0

매개 변수를 먼저 입력해야합니다. Add()입니다.

SqlParameter p = PTda.SelectCommand.Parameters.Add("@ProjectNumber", DbType.Int); 
p.Value = DBNull.Value;