Sqlserver
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Sqlserver

Nhận phản hồi kết quả từ một thủ tục được lưu trữ trong Entity Framework

Một cách để thực hiện là gọi ExecuteStoreCommand và chuyển vào SqlParameter với hướng Output :

var dtparm = new SqlParameter("@dtparm", DateTime.Now);
var retval = new SqlParameter("@retval", SqlDbType.Int);

retval.Direction = ParameterDirection.Output;

context.ExecuteStoreCommand("exec @retval = MyProc @dtparm", retval, dtparm);

int return_value = (int)retval.Value;

Ban đầu, tôi đã thử sử dụng hướng ReturnValue :

retval.Direction = ParameterDirection.ReturnValue;

context.ExecuteStoreCommand("MyProc @dtparm", retval, dtparm);

nhưng retval.Value sẽ luôn là 0 . Tôi nhận ra rằng retval là kết quả của việc thực thi MyProc @dtparm , vì vậy tôi đã thay đổi nó để nắm bắt giá trị trả về của MyProc và trả về nó dưới dạng tham số đầu ra.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Làm cách nào để chuyển sqlparameter tới IN ()?

  2. SQL Server Internals:Lập kế hoạch Caching Pt. I - Tái sử dụng các kế hoạch

  3. Tính tổng chi phí sở hữu theo dõi máy chủ SQL của bạn

  4. Cách sử dụng lồng nhau bằng C # và SQL Server

  5. Tôi có thể sử dụng Kiểu dữ liệu ngày trong máy chủ sql như thế nào?