加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

asp.net-mvc – 使用LINQ从MVC调用存储过程而不指定类结构(因为

发布时间:2020-12-16 07:41:42 所属栏目:asp.Net 来源:网络整理
导读:有没有办法用动态结果集(没有列)调用存储过程,而不知道确切的类模型并且必须预先定义它.只想获得一个动态列表然后循环行? 据我所知,我找不到任何例子,不确定这是否可能,但如果我能做到这一点,那就会很整洁…… var query = _db.Database.SqlQuery????("EXEC
有没有办法用动态结果集(没有列)调用存储过程,而不知道确切的类模型并且必须预先定义它.只想获得一个动态列表然后循环行?

据我所知,我找不到任何例子,不确定这是否可能,但如果我能做到这一点,那就会很整洁……

var query = _db.Database.SqlQuery<????>("EXEC [dbo].[PivotOnMeterReadView]");
    var result = query.ToList();

解决方法

据我所知,无法通过LINQ执行存储过程.您必须使用SqlConnection和SqlCommand.下面是我用于成功执行SP的代码片段.希望我能帮忙:)

private readonly string sqlConnectionString = ConfigurationManager.ConnectionStrings["DatabaseConnectionString"].ConnectionString;
SqlConnection sqlconn = new SqlConnection(sqlConnectionString); //sqlConnectionString is the database connection.
sqlconn.Open();
using (SqlCommand cmd = new SqlCommand("InsertUsers",sqlconn)) // "InsertUsers" is the name of SP.
{
    cmd.CommandType = CommandType.StoredProcedure;
    cmd.Parameters.Add("@User",SqlDbType.Structured).Value = User; //Here I am passing the "User" variable as an argument to the "@User" paramter
    cmd.ExecuteNonQuery();
}
sqlconn.Close();

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读