次の方法で共有


Database.SqlQuery<TElement> メソッド (String, Object[])

[このページは、Entity Framework 6 に関するページです。最新バージョンは、'Entity Framework' NuGet パッケージとして入手できます。Entity Framework の詳細については、msdn.com/data/ef を参照してください。]

指定したジェネリック型の要素を返す生の SQL クエリを作成します。 型は、クエリから返される列の名前に一致するプロパティを持つ任意の型、または単純なプリミティブ型を指定できます。 型は、エンティティ型でなくてもかまいません。 返されたオブジェクトの型がエンティティ型であっても、このクエリの結果がコンテキストによって追跡されることはありません。 SqlQuery(String, Object[]) メソッドを使用して、コンテキストによって追跡されるエンティティを返します。 SQL を受け入れる API と同様に、すべてのユーザー入力をパラメーター化して、SQL インジェクション攻撃から保護することが重要です。 パラメーターのプレースホルダーを SQL クエリ文字列に含めて、パラメーター値を追加の引数として指定することができます。 指定したパラメーター値はすべて、DbParameter に自動的に変換されます。 context.Database.SqlQuery&lt;Post&gt;("SELECT * FROM dbo.Posts WHERE Author = @p0", userSuppliedAuthor); または、DbParameter を構築して、それを SqlQuery に指定することもできます。 これにより、SQL クエリ文字列で名前付きパラメーターを使用できます。 context.Database.SqlQuery&lt;Post&gt;("SELECT * FROM dbo.Posts WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor));

名前空間:  System.Data.Entity
アセンブリ:  EntityFramework (EntityFramework.dll 内)

構文

'宣言
Public Function SqlQuery(Of TElement) ( _
    sql As String, _
    ParamArray parameters As Object() _
) As DbRawSqlQuery(Of TElement)
'使用
Dim instance As Database 
Dim sql As String 
Dim parameters As Object()
Dim returnValue As DbRawSqlQuery(Of TElement)

returnValue = instance.SqlQuery(sql, parameters)
public DbRawSqlQuery<TElement> SqlQuery<TElement>(
    string sql,
    params Object[] parameters
)
public:
generic<typename TElement>
DbRawSqlQuery<TElement>^ SqlQuery(
    String^ sql, 
    ... array<Object^>^ parameters
)
member SqlQuery : 
        sql:string * 
        parameters:Object[] -> DbRawSqlQuery<'TElement> 
JScript does not support generic types and methods.

型パラメーター

  • TElement
    クエリによって返されるオブジェクトの型。

パラメーター

  • parameters
    型 : System.Object[]
    SQL クエリ文字列に適用するパラメーター。 出力パラメーターを使用する場合は、結果が完全に読み取られるまでそれらの値は利用できません。 これは、DbDataReader の基になっている動作のためです。詳しくは https://go.microsoft.com/fwlink/?LinkID=398589 を参照してください。

戻り値

型 : System.Data.Entity.Infrastructure.DbRawSqlQuery<TElement>
列挙されたときにクエリを実行する DbRawSqlQuery<TElement> オブジェクト。

参照

参照

Database クラス

SqlQuery オーバーロード

System.Data.Entity 名前空間