Share via


ObjectContext.ExecuteStoreQuery Metode

Definisi

Overload

ExecuteStoreQuery<TElement>(String, Object[])

Menjalankan kueri secara langsung terhadap sumber data yang mengembalikan urutan hasil yang ditik.

ExecuteStoreQuery<TEntity>(String, String, MergeOption, Object[])

Menjalankan kueri secara langsung terhadap sumber data dan mengembalikan urutan hasil yang ditik. Tentukan kumpulan entitas dan opsi gabungkan sehingga hasil kueri dapat dilacak sebagai entitas.

ExecuteStoreQuery<TElement>(String, Object[])

Menjalankan kueri secara langsung terhadap sumber data yang mengembalikan urutan hasil yang ditik.

public:
generic <typename TElement>
 System::Data::Objects::ObjectResult<TElement> ^ ExecuteStoreQuery(System::String ^ commandText, ... cli::array <System::Object ^> ^ parameters);
public System.Data.Objects.ObjectResult<TElement> ExecuteStoreQuery<TElement> (string commandText, params object[] parameters);
member this.ExecuteStoreQuery : string * obj[] -> System.Data.Objects.ObjectResult<'Element>
Public Function ExecuteStoreQuery(Of TElement) (commandText As String, ParamArray parameters As Object()) As ObjectResult(Of TElement)

Jenis parameter

TElement

Jenis data yang dikembalikan.

Parameter

commandText
String

Perintah untuk dijalankan, dalam bahasa asli sumber data.

parameters
Object[]

Array parameter untuk diteruskan ke perintah .

Mengembalikan

ObjectResult<TElement>

Enumerasi objek jenis TElement.

Keterangan

Metode ini ExecuteStoreQuery menggunakan koneksi yang ada untuk menjalankan perintah arbitrer langsung terhadap sumber data. Perintah penyimpanan dijalankan dalam konteks transaksi saat ini, jika transaksi tersebut ada.

Memanggil ExecuteStoreQuery metode ini setara dengan memanggil ExecuteReader metode DbCommand kelas , hanya ExecuteStoreQuery mengembalikan entitas dan ExecuteReader mengembalikan nilai properti di DbDataReader.

ExecuteStoreQuery Panggil dengan nama set entitas yang ditentukan, jika Anda ingin hasilnya dilacak.

Translate Panggil metode untuk menerjemahkan DbDataReader ke dalam objek entitas saat pembaca berisi baris data yang memetakan ke jenis entitas yang ditentukan.

Menggunakan perintah berparameter membantu melindungi dari serangan injeksi SQL, di mana penyerang "menyuntikkan" perintah ke dalam pernyataan SQL yang membahayakan keamanan di server. Perintah berparameter melindungi dari serangan injeksi SQL dengan menjamin bahwa nilai yang diterima dari sumber eksternal diteruskan sebagai nilai saja, dan bukan bagian dari pernyataan SQL. Akibatnya, perintah SQL yang dimasukkan ke dalam nilai tidak dijalankan di sumber data. Sebaliknya, mereka dievaluasi hanya sebagai nilai parameter. Selain manfaat keamanan, perintah berparameter menyediakan metode yang nyaman untuk mengatur nilai yang diteruskan dengan pernyataan SQL atau ke prosedur tersimpan.

Nilai parameters dapat berupa array DbParameter objek atau array nilai parameter. Jika hanya nilai yang disediakan, array DbParameter objek dibuat berdasarkan urutan nilai dalam array.

Untuk informasi selengkapnya, lihat:

Langsung Menjalankan Perintah Store dan

Cara: Langsung Jalankan Perintah Terhadap Sumber Data

Berlaku untuk

ExecuteStoreQuery<TEntity>(String, String, MergeOption, Object[])

Menjalankan kueri secara langsung terhadap sumber data dan mengembalikan urutan hasil yang ditik. Tentukan kumpulan entitas dan opsi gabungkan sehingga hasil kueri dapat dilacak sebagai entitas.

public:
generic <typename TEntity>
 System::Data::Objects::ObjectResult<TEntity> ^ ExecuteStoreQuery(System::String ^ commandText, System::String ^ entitySetName, System::Data::Objects::MergeOption mergeOption, ... cli::array <System::Object ^> ^ parameters);
public System.Data.Objects.ObjectResult<TEntity> ExecuteStoreQuery<TEntity> (string commandText, string entitySetName, System.Data.Objects.MergeOption mergeOption, params object[] parameters);
member this.ExecuteStoreQuery : string * string * System.Data.Objects.MergeOption * obj[] -> System.Data.Objects.ObjectResult<'Entity>
Public Function ExecuteStoreQuery(Of TEntity) (commandText As String, entitySetName As String, mergeOption As MergeOption, ParamArray parameters As Object()) As ObjectResult(Of TEntity)

Jenis parameter

TEntity

Jenis entitas dari data yang dikembalikan.

Parameter

commandText
String

Perintah untuk dijalankan, dalam bahasa asli sumber data.

entitySetName
String

Kumpulan entitas jenis TEntity . Jika nama set entitas tidak disediakan, hasilnya tidak akan dilacak.

mergeOption
MergeOption

yang MergeOption akan digunakan saat menjalankan kueri. Default adalah AppendOnly.

parameters
Object[]

Array parameter untuk diteruskan ke perintah .

Mengembalikan

ObjectResult<TEntity>

Enumerasi objek jenis TResult.

Keterangan

Metode ini ExecuteStoreQuery menggunakan koneksi yang ada untuk menjalankan perintah arbitrer langsung terhadap sumber data. Perintah penyimpanan dijalankan dalam konteks transaksi saat ini, jika transaksi tersebut ada.

Memanggil ExecuteStoreQuery metode ini setara dengan memanggil ExecuteReader metode DbCommand kelas , hanya ExecuteStoreQuery mengembalikan entitas dan ExecuteReader mengembalikan nilai properti di DbDataReader.

Tentukan nama kumpulan entitas, jika Anda ingin hasilnya dilacak sebagai entitas.

Panggil Translate metode untuk menerjemahkan DbDataReader ke dalam objek entitas saat pembaca berisi baris data yang memetakan ke jenis entitas yang ditentukan.

Menggunakan perintah berparameter membantu melindungi dari serangan injeksi SQL, di mana penyerang "menyuntikkan" perintah ke dalam pernyataan SQL yang membahayakan keamanan di server. Perintah berparameter melindungi dari serangan injeksi SQL dengan menjamin bahwa nilai yang diterima dari sumber eksternal diteruskan sebagai nilai saja, dan bukan bagian dari pernyataan SQL. Akibatnya, perintah SQL yang dimasukkan ke dalam nilai tidak dijalankan di sumber data. Sebaliknya, mereka dievaluasi hanya sebagai nilai parameter. Selain manfaat keamanan, perintah berparameter menyediakan metode yang nyaman untuk mengatur nilai yang diteruskan dengan pernyataan SQL atau ke prosedur tersimpan.

Nilai parameters dapat berupa array DbParameter objek atau array nilai parameter. Jika hanya nilai yang disediakan, array DbParameter objek dibuat berdasarkan urutan nilai dalam array.

Untuk informasi selengkapnya, lihat:

Langsung Menjalankan Perintah Store dan

Cara: Langsung Jalankan Perintah Terhadap Sumber Data

Berlaku untuk