关于EF执行返回表的存储过程

1、关于EF执行返回表的存储过程

  不知道为什么EF生成的存储过程方法会报错,以下方法可以使用,call是MySQL执行存储过程的命令

        [HttpGet]
        public HttpResponseMessage getNavigation()
        {
            JsonData jsonData = new JsonData();
            try
            {
                //存储过程的参数 
                MySqlParameter mySqlParameter = new MySqlParameter("@state", 1);
                //如果有多个参数就这样写
                //MySqlParameter[] mySqlParameterArray = new MySqlParameter[] { new MySqlParameter("@state", 1) };
                //NavigationModel接受数据的模型        
                var navigationList = DbContext.Database.SqlQuery<NavigationModel>("CALL get_navigation_list(@state)", mySqlParameter).ToList();
                jsonData.backData.Add("navigationList", navigationList);
                jsonData.message = "获取导航条成功";
            }
            catch (Exception error)
            {
                jsonData.state = "300";
                jsonData.message = error.Message;
            }
            return returnJsonData(jsonData);


        }
View Code
原文地址:https://www.cnblogs.com/zhouyukai/p/7485945.html