Loading

EF调用存储过程后返回DataSet数据

前言

WEBAPI如何使用EF调用存储过程后,返回DataSet数据;

代码

public DataSet GetData()
{
   using (var e = new Entities())
  {
    var command = e.Database.Connection.CreateCommand(); //1.创建Command
    command.CommandType = CommandType.StoredProcedure;   //2.声明CommandType类型:存储过程
    command.CommandText = "usp_name";		         //3.存储过程名称
    command.Parameters.AddRange(new SqlParameter[] {     //4.Command.Parameters
    	new SqlParameter("year",DateTime.Now.Year),      //5.输入参数
    	new SqlParameter("outputTime", DBNull.Value)     //6.输出参数
   	{ 
      		Direction = ParameterDirection.Output,   //标志输出参数
      		SqlDbType = SqlDbType.VarChar,           //参数类型 
      		Size = 200  			         //类型大小
    	},
     });
     using (var adapter = new SqlDataAdapter(command as SqlCommand))//7.引用SqlDataAdapter
     {
        DataSet dataSet = new DataSet();		          //8.声明DataSet
        adapter.Fill(dataSet);		                          //9.把DataSet填充到adapter
        outputTime = command.Parameters[1].Value.ToString();      //10.输出参数
        return dataSet;					          //11.返回dataset类型
       }
   }	
} 

posted @ 2021-04-20 16:02  我是小柒  阅读(272)  评论(0编辑  收藏  举报