Sqlserver
 sql >> Teknologi Basis Data >  >> RDS >> Sqlserver

EF Function Import tidak mengenali kolom yang dikembalikan oleh StoredProc

Setelah googling dengan marah, saya menemukan jawabannya:EF4 - Prosedur tersimpan yang dipilih tidak mengembalikan kolom

EF tidak bisa mendapatkan metadata dari proc tersimpan yang menggunakan kueri dinamis atau tabel temp. Solusinya adalah secara manual membuat tipe yang dikembalikan kompleks ATAU menempatkan

SET FMTONLY OFF

dalam definisi proc saya yang tersimpan. Bahaya dengan opsi kedua, tentu saja adalah bahwa proc yang disimpan akan dieksekusi ketika Visual Studio mengeksekusi panggilan metadata, jadi ini idealnya hanya digunakan jika prosedur tersimpan tidak mengubah apa pun.

PEMBARUAN:Alternatifnya adalah memastikan bahwa prosedur tersimpan benar-benar berfungsi. Hal lain yang dapat Anda lakukan adalah membuat prosedur tersimpan dummy yang mengembalikan kolom yang Anda inginkan, mengikatnya dan kemudian melakukan logika yang sebenarnya.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. SQL berfungsi sebagai nilai parameter default?

  2. Pembaruan SQL, kueri yang sama, hasil yang berbeda setiap kali

  3. Menggunakan Petunjuk NOLOCK di EF4?

  4. Metode Ekspor dan Impor Tabel Database SQL Server

  5. Bagaimana menemukan semua tabel dengan Kolom Identitas di Database SQL Server - Tutorial SQL Server / T-SQL Bagian 45