我有一个我正在调用的存储过程,它有三个参数,但在我的生活中,我看不出我在 C# 中的语法有什么问题:
var _accountREFCurrrent = new SqlParameter("@AccountRef", SqlDbType.NVarChar);
_accountREFCurrrent.Value = account.ACCOUNT_REF;
var _SortOrder = new SqlParameter("@SortOrder", SqlDbType.Int);
_SortOrder.Value = first.SORT_ORDER;
var _CATEGORY = new SqlParameter("@CATEGORY", SqlDbType.Int);
_CATEGORY.Value = first.CATEGORY;
var result = db.Database.SqlQuery<sp_sumbalances_Result>("sp_sumbalances_Result
@AccountRef @SortOrder @CATEGORY", new object[] { _accountREFCurrrent,
_CATEGORY ,_SortOrder }).ToList();
这可能是愚蠢的事情。我现在是正确的,因为它在SQL Server Management Studio 中返回数据:
在 SQL Server Management Studio 中从上面返回的数据。
您将看到我在 .NET 中遇到的错误:
参数之间缺少逗号,变量顺序错误:
var result = db.Database.SqlQuery<sp_sumbalances_Result>("sp_sumbalances_Result
@AccountRef @SortOrder @CATEGORY", new object[] { _accountREFCurrrent,
_CATEGORY ,_SortOrder }).ToList();
应该:
var result = db.Database.SqlQuery<sp_sumbalances_Result>("sp_sumbalances_Result
@AccountRef, @SortOrder, @CATEGORY", new object[] { _accountREFCurrrent, _SortOrder,
_CATEGORY}).ToList();
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句