How to send consecutive stored procedures and its parameters

Discussion in 'ASP .Net' started by Sharon, Feb 3, 2010.

  1. Sharon

    Sharon Guest

    Hi Community

    I have an ASP.NET web project. In this project I am consecutively
    sending and passing 5 different stored procedures along with a parameter to
    a receiving method. The first stored procedure (sp1) and its parameter gets
    processed by the receiving method without a problem but when the second
    stored procedure (sp2) gets passed with its parameter to the receiving method
    the receiving method crashes and the program aborts. Below is an example of
    how I am trying to pass the 5 stored procedures along with its parameter to
    the receiving method,
    the lines that it seems to crash on are marked:

    ***below is the are the stored procedures getting passed consecutively

    Public DataSet getDS()
    {
    CreateCmd ("sp1", @Params, ref ds);
    CreateCmd ("sp2", @Params, ref ds);
    CreateCmd ("sp3", @Params, ref ds);
    CreateCmd ("sp4", @Params, ref ds);
    CreateCmd ("sp5", @Params, ref ds);
    }


    ***below is the method that receives and processes the stored procedures
    sent above

    private SqlCommand CreateCmd(string strSql, SqlParameter[] Param,
    CommandType SQLCmdType)
    {
    Conn = new SqlConnection(GetConn ());
    SqlCommand Createcmd = new SqlCommand(strSql, Conn);


    Createcmd.CommandType = SQLCmdType;

    if (Param != null) <<< crash
    {
    foreach (SqlParameter p1 in Param) ) <<< crash

    {
    Createcmd.Parameters.Add(p1); ) <<< crash

    }
    }
    Conn.Open();
    return Createcmd;

    }

    My question is how can I pass consecutive stored procedurs with their
    parameters to another method to be processed?
     
    Sharon, Feb 3, 2010
    #1
    1. Advertising

  2. Sharon

    Mr. Arnold Guest

    Sharon wrote:
    > Hi Community
    >
    > I have an ASP.NET web project. In this project I am consecutively
    > sending and passing 5 different stored procedures along with a parameter to
    > a receiving method. The first stored procedure (sp1) and its parameter gets
    > processed by the receiving method without a problem but when the second
    > stored procedure (sp2) gets passed with its parameter to the receiving method
    > the receiving method crashes and the program aborts. Below is an example of
    > how I am trying to pass the 5 stored procedures along with its parameter to
    > the receiving method,
    > the lines that it seems to crash on are marked:
    >


    So why can't you use one SP1, pass its parms, and all the other parms to
    all the SP(s) to SP1. Then SP1 does its resultset and calls the other
    SP(s)to produce their resultsets, a multiple results resultset?

    Then you use a SQL DataReader read the first resultset, get the
    infromation, do reader.nextresult read the data, etc, etc.
     
    Mr. Arnold, Feb 4, 2010
    #2
    1. Advertising

  3. On Feb 4, 12:29 am, Sharon <> wrote:
    > Hi Community
    >
    >     I have an ASP.NET web project.  In this project I am consecutively
    > sending and  passing 5 different stored procedures along with a parameter to
    > a receiving method.  The first stored procedure (sp1)  and its parameter gets
    > processed by the receiving method without a problem but when the second
    > stored procedure (sp2) gets passed with its parameter to the receiving method
    > the receiving method crashes and the program aborts. Below is an example of
    > how I am trying to pass the 5 stored procedures along with its parameter to
    > the receiving method,
    > the lines that it seems to crash on are marked:
    >
    > ***below is the are the stored procedures getting passed consecutively
    >
    > Public DataSet getDS()
    > {
    >     CreateCmd ("sp1", @Params, ref ds);
    >     CreateCmd ("sp2", @Params, ref ds);
    >     CreateCmd ("sp3", @Params, ref ds);
    >     CreateCmd ("sp4", @Params, ref ds);
    >     CreateCmd ("sp5", @Params, ref ds);
    >
    > }
    >
    > ***below is the method that receives and processes the stored procedures
    > sent above
    >
    >        private SqlCommand CreateCmd(string strSql, SqlParameter[] Param,
    > CommandType SQLCmdType)
    >         {
    >             Conn = new SqlConnection(GetConn ());
    >             SqlCommand Createcmd = new SqlCommand(strSql, Conn);
    >
    >             Createcmd.CommandType = SQLCmdType;
    >
    >             if (Param != null)                          <<< crash
    >             {
    >                 foreach (SqlParameter p1 in Param) )    <<< crash
    >
    >                 {
    >                     Createcmd.Parameters.Add(p1); )     <<< crash
    >
    >                 }
    >             }
    >             Conn.Open();
    >             return Createcmd;
    >
    >         }
    >
    > My question is how can I pass consecutive stored procedurs with their
    > parameters to another method to be processed?


    I don't get what does "@Params" mean when you call CreateCmd()? You
    need to pass an array of SqlParameter[]

    CreateCmd ("sp1", @Params, ref ds);

    And why "ref ds" is used? I think you don't need to refer to the same
    variable there. Get rid of ref.
     
    Alexey Smirnov, Feb 4, 2010
    #3
    1. Advertising

Want to reply to this thread or ask your own question?

It takes just 2 minutes to sign up (and it's free!). Just click the sign up button to choose a username and then you can ask your own questions on the forum.
Similar Threads
  1. .Net Sports
    Replies:
    3
    Views:
    625
    Robbe Morris [C# MVP]
    May 12, 2005
  2. Replies:
    4
    Views:
    597
    M.-A. Lemburg
    Nov 8, 2008
  3. Chris Hall
    Replies:
    0
    Views:
    137
    Chris Hall
    Nov 15, 2006
  4. thunk
    Replies:
    1
    Views:
    359
    thunk
    Mar 30, 2010
  5. thunk
    Replies:
    0
    Views:
    536
    thunk
    Apr 1, 2010
Loading...

Share This Page