db.Database.SqlQuery原始数据返回存储过程名称和参数

时间:2015-03-16 16:24:53

标签: mysql sql-server entity-framework stored-procedures model-view-controller

我有一个存储过程,它返回包含字符串的1行和1列。

我正在使用db.Database中的SqlQuery方法尝试将此方法作为字符串返回。但是,当我检查返回值时,它返回存储过程的名称和我试图传递的参数。

var val = db.Database.SqlQuery<string>(string.Format("{0} @QuestionnaireID", model.ObjectiveB.StoredProcedure.SpName),
    new SqlParameter("QuestionnaireID", model.ProjectId));

这是返回的内容

enter image description here

我也尝试过使用

.FirstOfDefault()

.ToList()

但是仍然没有返回我想要的值,包括存储过程的名称和它的参数。任何帮助都会很棒!

1 个答案:

答案 0 :(得分:1)

简单回答是这样的:

var response = Db.Database.SqlQuery<string>("EXEC procName @p1={0}, @p2={1}, @p3={2}", v1, v2, v3);

var strResponse = resp.First();

请务必先检查响应对象是否有错误。