db.Database.SqlQuery 原始数据返回存储过程名称和参数
Posted
技术标签:
【中文标题】db.Database.SqlQuery 原始数据返回存储过程名称和参数【英文标题】:db.Database.SqlQuery raw data returns stored procedure name and parameters 【发布时间】:2015-05-18 20:51:47 【问题描述】:我有一个存储过程,它返回包含字符串的 1 行和 1 列。
我正在使用 db.Database 中的 SqlQuery 方法来尝试将此方法作为字符串返回。但是,当我检查返回值时,它会返回存储过程的名称和我尝试传递的参数。
var val = db.Database.SqlQuery<string>(string.Format("0 @QuestionnaireID", model.ObjectiveB.StoredProcedure.SpName),
new SqlParameter("QuestionnaireID", model.ProjectId));
这是返回的内容
我也尝试过使用
.FirstOfDefault()
和
.ToList()
但仍然没有返回我想要的值,只有存储过程的名称和它的参数。任何帮助都会很棒!
【问题讨论】:
【参考方案1】:简单的答案是这样的:
var response = Db.Database.SqlQuery<string>("EXEC procName @p1=0, @p2=1, @p3=2", v1, v2, v3);
var strResponse = resp.First();
确保首先检查响应对象是否有错误。
【讨论】:
你确定这在 mysql 中有效吗?我想你需要你说调用 procName()?以上是关于db.Database.SqlQuery 原始数据返回存储过程名称和参数的主要内容,如果未能解决你的问题,请参考以下文章