【问题标题】:Stored procedure with char[n] input parameter not getting called from EF with string SqlParameter带有 char[n] 输入参数的存储过程没有从带有字符串 SqlParameter 的 EF 调用
【发布时间】:2015-12-04 12:17:03
【问题描述】:

我的 SQL Server 存储过程需要两个 char(2) 参数。

我传递它的字符串如下,但存储过程没有返回数据。

this.parameters.Add(new SqlParameter("A", this._A));//this._A is string type
this.parameters.Add(new SqlParameter("B", this._B));

我也尝试添加SqlType.CharSize 参数,但没有成功。有人可以提出解决方案吗?

【问题讨论】:

  • 这看起来不像 EF6 问题?
  • 好吧,我们需要看看 (1) 存储过程代码,以及 (2) 涉及的表结构,以及 (3) 你用来测试的一些样本数据

标签: sql-server stored-procedures entity-framework-6 sqlparameter


【解决方案1】:
this.parameters.Add(new SqlParameter("@A", this._A));
this.parameters.Add(new SqlParameter("@B", this._B));

using (var reader = cmd.ExecuteReader()) //error occurs here
{
    while (reader.Read())
    {

    }
}



var sqlParameter = new SqlParameter("@A", SqlDbType.VarChar, 2);
sqlParameter.Value = this.A;

你试过了吗

【讨论】:

  • 它说枚举没有结果
  • @InTheWorldOfCodingApplications:那么显然,您的存储过程没有返回任何结果 ....
猜你喜欢
  • 1970-01-01
  • 2018-05-29
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-04-29
  • 2013-06-19
  • 2015-01-07
  • 2013-06-24
相关资源
最近更新 更多