【问题标题】:db.Database.SqlQuery raw data returns stored procedure name and parametersdb.Database.SqlQuery 原始数据返回存储过程名称和参数
【发布时间】: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()

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

【问题讨论】:

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


    【解决方案1】:

    简单的答案是这样的:

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

    确保首先检查响应对象是否有错误。

    【讨论】:

    • 你确定这在 MySQL 中有效吗?我想你需要你说调用 procName()?
    猜你喜欢
    • 2010-12-13
    • 1970-01-01
    • 1970-01-01
    • 2012-12-17
    • 1970-01-01
    • 2018-08-20
    • 1970-01-01
    • 2023-03-10
    • 1970-01-01
    相关资源
    最近更新 更多