我在以ExecuteNonQuery方法调用无参的存储过时,代码如下
 public int RunProcedure(string ProncedureName)
        {
            SqlCommand Sqlcmd = CreateCommand(ProncedureName, null);
            Sqlcmd .ExecuteNonQuery ();
            this.Close ();
            return (int)Sqlcmd .Parameters ["ReturnValue"].Value ;
提示错误是上下文中不存在名称 "CreateCommand",我都不知道哪里定义的,我上文中都看过了,没这个呀,我是按书来来打的

解决方案 »

  1.   

    你需要在树上找到CreateCommand这个函数,或者自己写一个sqlcommand一般这么创建
    private static void CreateCommand(string queryString,
        string connectionString)
    {
        using (SqlConnection connection = new SqlConnection(
                   connectionString))
        {
            SqlCommand command = new SqlCommand(
                queryString, connection);
            connection.Open();
            SqlDataReader reader = command.ExecuteReader();
            while (reader.Read())
            {
                Console.WriteLine(String.Format("{0}, {1}",
                    reader[0], reader[1]));
            }
        }
    }
    参考
    http://msdn.microsoft.com/en-us/library/877h0y3a.aspx
      

  2.   

    using System;
    using System.Collections.Generic;
    using System.Text;
    using System.Data;
    using System.Data.SqlClient;
    namespace Disk.DBUtils
    {
        class SqlHelper
        {
            private string connectionString;
            protected SqlConnection Connection;
            public SqlHelper()
            {
                connectionString = System.Configuration.ConfigurationManager.ConnectionStrings["DiskConnectionString"].ToString();
                Connection = new SqlConnection(connectionString);
            }
            public SqlHelper(string newConnectionString)
            {
                connectionString = newConnectionString;
                Connection = new SqlConnection(connectionString);
            }        public DataTable ReturnDataTable(string sql)
            {
                try
                {
                    DataTable dataTable = new DataTable();
                    Connection.Open();
                    SqlDataAdapter sqlDA = new SqlDataAdapter(sql, Connection);
                    sqlDA.Fill(dataTable);
                    Connection.Close();
                    return dataTable;
                }
                catch
                {                return null;
                }
            }
            public SqlDataReader  ReturnDataReader(string sql)
            {            try
                {                Connection.Open();
                    SqlCommand command = new SqlCommand(sql, Connection);
                    SqlDataReader dataReader = command.ExecuteReader(CommandBehavior.CloseConnection);
                    return dataReader;
                }
                catch
                {
                    return null;
                }
            }
            public int ReturnRecordCount(string sql)
            {
                try
                {
                    int recordCount = 0;
                    Connection.Open();
                    SqlCommand command = new SqlCommand(sql,Connection );
                    SqlDataReader dataReader = command.ExecuteReader();
                    while (dataReader.Read())
                    {
                        recordCount++;
                    }
                    dataReader.Close();
                    Connection.Close();
                    return recordCount;
                }
                catch
                {
                    return 0;
                }
            
            }
            public string EditDatabase(string sql)
            {
                string successState = "执行失败";
                Connection.Open();
                SqlTransaction mytrans = Connection.BeginTransaction();
                SqlCommand command = new SqlCommand(sql, Connection, mytrans);
                try
                {
                    command.ExecuteNonQuery();
                    mytrans.Commit();
                    successState = "执行成功";            }
                catch
                {
                    mytrans.Rollback();            }
                finally
                {
                    Connection.Close();
                
                }
                return successState;
            
            }
            public void Open()
            {
                try
                {
                    Connection.Open();
                }
                catch (System.Exception ex)
                {
                    throw ex;
                }
            
            }
            public void Close()
            {
                try
                {
                    if (Connection != null)
                    { Connection.Close(); }
                }
                catch (System.Exception ex1)
                {
                    throw ex1;
                }
            }
            public void Dispose()
            {           //释放资源
                if (Connection != null)
                {
                    Connection.Dispose();
                    Connection = null;
                }
            
            }
            public int RunProcedure(string ProncedureName)
            {
                SqlCommand Sqlcmd = CreateCommand(ProncedureName, null);
                Sqlcmd .ExecuteNonQuery ();
                this.Close ();
                return (int)Sqlcmd .Parameters ["ReturnValue"].Value ;

            
            }
            public int RunProcedure(string ProcedureName, SqlParameter[] SqlPrams)
            {
                //由ExecuteNonQuery执行的存储过程,有存储过程参数
                SqlCommand Sqlcmd = CreateCommand(ProcedureName, SqlPrams);
                Sqlcmd.ExecuteNonQuery();
                this.Close();
                return (int)Sqlcmd.Parameters["ReturnValue"].Value;
            
            }
            public void RunProcedure(string ProcedureName, out SqlDataReader SqlReader)
            {
                //以SqlDataReader返回存储过程的结果,无存储过程参数
                SqlCommand Sqlcmd = CreateCommand(ProcedureName, null);
                SqlReader = Sqlcmd.ExecuteReader(CommandBehavior.CloseConnection);
            }
            public void RunProdure(string ProcedureName, SqlParameter[] SqlPrams, out SqlDataReader SqlReader)
            {
                SqlCommand Sqlcmd = CreateCommand(ProcedureName, SqlPrams);
                SqlReader =  Sqlcmd.ExecuteReader(CommandBehavior.CloseConnection);
            }
            public DataSet RunProcedure(string ProcedureName, string Table)
            {
                DataSet SqlDS = new DataSet();
                SqlDataAdapter SqlDA = CreateDataAdapter(ProcedureName, null);
                SqlDA.Fill(SqlDS, Table);
                return (SqlDS);
            
            }
            public DataSet RunProcedure(string ProcedureName, SqlParameter[] SqlPrams, string Table)
            {
                DataSet SqlDS = new DataSet();
                SqlDataAdapter SqlDA = CreateDataAdapter(ProcedureName, SqlPrams);
                SqlDA.Fill(SqlDS, Table);
                return (SqlDS);
            
            }
        }
           
    }我所有的代码如下 ,如何定义
      

  3.   

    http://blog.csdn.net/keenweiwei/article/details/6845709