title: How to execute a stored procedure within C# program
body: <p>I want to execute this stored procedure from a C# program.</p>
  
  <p>I have written the following stored procedure in a SqlServer query window and saved it as 
  stored1:</p>
  
  <pre><code>use master 
  go
  create procedure dbo.test as
  
  DECLARE @command as varchar(1000), @i int
  SET @i = 0
  WHILE @i &lt; 5
  BEGIN
  Print 'I VALUE ' +CONVERT(varchar(20),@i)
  EXEC(@command)
  SET @i = @i + 1
  END
  </code></pre>
  
  <p><b>EDITED:</b></p>
  
  <pre><code>using System;
  using System.Collections.Generic;
  using System.Text;
  using System.Data;
  using System.Data.SqlClient;
  namespace AutomationApp
  {
      class Program
      {
          public void RunStoredProc()
          {
              SqlConnection conn = null;
              SqlDataReader rdr  = null;
  
              Console.WriteLine("\nTop 10 Most Expensive Products:\n");
  
              try
              {
                  conn = new SqlConnection("Server=(local);DataBase=master;Integrated Security=SSPI");
                  conn.Open();
                  SqlCommand cmd = new SqlCommand("dbo.test", conn);
                  cmd.CommandType = CommandType.StoredProcedure;
                  rdr = cmd.ExecuteReader();
                  /*while (rdr.Read())
                  {
                      Console.WriteLine(
                          "Product: {0,-25} Price: ${1,6:####.00}",
                          rdr["TenMostExpensiveProducts"],
                          rdr["UnitPrice"]);
                  }*/
              }
              finally
              {
                  if (conn != null)
                  {
                      conn.Close();
                  }
                  if (rdr != null)
                  {
                      rdr.Close();
                  }
              }
          }
          static void Main(string[] args)
          {
              Console.WriteLine("Hello World");
              Program p= new Program();
              p.RunStoredProc();      
              Console.Read();
          }
      }
  }
  </code></pre>
  
  <p>This displays the exception <code>Cannot find the stored procedure dbo.test</code>. Do I need to provide the path? If yes, in which location should the stored procedures be stored?</p>