• Ibatis.net总是报:【ExecuteStoreCommand SqlParameterCollection 中已包含 SqlParameter】(转)


    今天很奇怪调用EF的ExecuteStoreCommand 出现了个这样的错误,怎么也调试不过,痛定思痛

    原来 command被连着调用了而没有销毁掉

      public static DataTable GetDataTable(
                string connDBStr, string sql, params SqlParameter[] cmdParms)
            {
                SqlCommand cmd = new SqlCommand();
                using (SqlConnection conn = new SqlConnection(connDBStr))
                {
                    PrepareSqlCommand(cmd, conn, null, sql, cmdParms);
                    SqlDataAdapter da = new SqlDataAdapter(cmd);
                    DataTable dt = new DataTable    (SetSqlAsDataTableName(sql));
                    da.Fill(dt);
                    cmd.Parameters.Clear();//多了这一句,就解决了问题
                    return dt;
                }

            }


    还要说说EF调用 ExecuteStoreCommand 的用法

    string orderCode =“test1”;

    string dishMenuCode=“test2”

              var parameter = new SqlParameter[]{

                    

      new SqlParameter("@p_order",orderCode),
                        new SqlParameter("@p_dish",dishMenuCode),
                    };//多个参数的列子
                   

    ef.ExecuteStoreCommand("update dbo.order_info_ed set dpState='1' where orderCode=@p_order and dishMenuCode=@p_dish", parameter);

                    var paramenter2 = new SqlParameter { ParameterName = "@p_user", Value = "gxw" };//一个参数的例子
                    ef.ExecuteStoreCommand("select * From UserTable where username=@p_user", paramenter2);
  • 相关阅读:
    编写第一个 .NET 微服务
    Docker 基础知识编排在开发机上设置和使用 Kubernetes 环境
    将微服务部署到 Azure Kubernetes 服务 (AKS) 实践
    .NET Task.Run vs Task.Factory.StartNew
    Python上下文管理器
    Python可迭代的对象与迭代器的对比
    开发你的第一个SpringBoot应用
    Flask的Blueprints和Views
    Flask项目发布流程
    长篇大论Python生成器
  • 原文地址:https://www.cnblogs.com/dwfbenben/p/3188100.html
Copyright © 2020-2023  润新知