public class ProcExecute
    {
        //所有存储过程所在的文件夹路径,配置在app.config下的
        private static readonly string DirectoryPath = ConfigurationManager.AppSettings["DirectoryPath"].ToString();
              /// <summary>
        /// 找到该文件下所有存储过程
        /// </summary>
         public void Execute() 
        {
            string[] files = Directory.GetFiles(DirectoryPath, "*.txt");
             
            foreach (string item in files)
            {
                Console.WriteLine(item+" 开始集成");
                SqlHelper.GetExcuteNonQuery(GetFileString(item)); //ExecuteNonQuery() 用的这个方法
                Console.WriteLine( item+"  集成成功");
            }
        }
        /// <summary>
        /// 返回存储过程的类容
        /// </summary>
        /// <param name="FilePath">txt路径</param>
        /// <returns></returns>
        private string GetFileString(string FilePath) 
        {
            string result = "";
            try
            {
               
                StreamReader sr = new StreamReader(FilePath,Encoding.Default);
                result = sr.ReadToEnd();
               
            }
            catch (Exception)
            {
                Console.WriteLine("Error!");            }
            return result;
            
             }
    }
因为测试要在不同的库上测,每次手动添加太麻烦 太多了..
result 这个值我调试复制在数据库可以执行成功,用程序执行时失败..是不是不能用sql的这个方法ExecuteNonQuery()执行。