C# 数据适配器参数

标签 c# sql

我已经编写了一些代码来从我的数据库中获取一些数据。 存储过程 仅使用ID 作为参数,并使用它来过滤结果。我在 SSMS 中使用 EXEC 命令运行了 存储过程 并且它有效。但是,当我尝试使用底部的代码调用它时,它失败了,说我没有提供参数。谁能看出我做错了什么?

using (SqlConnection sqlConnect = new SqlConnection(ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString))
{       
    try
    {
        DataTable dtBets = new DataTable("All Bets");
        using (SqlDataAdapter sqlDA = new SqlDataAdapter("up_Select_all", sqlConnect))
        {
            sqlDA.SelectCommand.Parameters.Add("@ID", SqlDbType.BigInt).Value = pCustomer.CustomerID;

            sqlDA.Fill(dtBets);
            return dtBets;
        }                        
    }

    catch (SqlException ex)
    {
        //catch code
    }

最佳答案

您忘记告诉 DataAdapter 它应该调用 Stored-Procedure:

using (SqlDataAdapter sqlDA = new SqlDataAdapter("up_Select_all", sqlConnect))
{
    sqlDA.SelectCommand.CommandType = CommandType.StoredProcedure;
    sqlDA.SelectCommand.Parameters.Add("@ID", SqlDbType.BigInt).Value = pCustomer.CustomerID;

    sqlDA.Fill(dtBets);
    return dtBets;
}    

关于C# 数据适配器参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14566980/

相关文章:

c# - 在哪里可以找到 Roslyn 中不同符号种类下的符号类型?

php - 从 MySQL 表中获取最近的日期

c# - 使用我的 C# 应用程序从谷歌浏览器中获取文本

c# - 在 JSON 中获得 400 webservice 状态时返回 false

c# - 如何通过 *.csproject 文件查找引用路径

C# boolean 需要转换为 SQL Server 的位,所以它需要是 1 而不是 True

mysql - 使用 MySQL 比较两个字符串

javascript - 使用关联的实例创建 - Sequelize

sql - SQL Server 中的条件 WHERE 子句

php - Mysql数据库选择方法