DbSet.SqlQuery(String, Object[]) 方法
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
建立原始 SQL 查詢,此查詢將會傳回此集合中的實體。 根據預設,傳回的實體會由內容追蹤;您可以藉由在傳回的 DbRawSqlQuery 上呼叫 AsNoTracking 來變更。 請注意,傳回的實體一律屬於此集合的類型,且永遠不會屬於衍生型別。 如果查詢的資料表可能包含其他實體型別的資料,則必須適當地撰寫 SQL 查詢,以確保只會傳回正確型別的實體。
如同接受 SQL 的任何 API,請務必將任何使用者輸入參數化,以防止 SQL 插入式攻擊。 您可以在 SQL 查詢字串中包含參數預留位置,然後提供參數值作為其他引數。 您提供的任何參數值都會自動轉換成 DbParameter。 上下文。設定 (typeof (Blog) ) 。SqlQuery (「SELECT * FROM dbo.貼文 WHERE Author = @p0 「, userSuppliedAuthor) ;或者,您也可以建構 DbParameter,並將其提供給 SqlQuery。 這可讓您在 SQL 查詢字串中使用具名參數。 上下文。設定 (typeof (Blog) ) 。SqlQuery (「SELECT * FROM dbo.貼文 WHERE Author = @author 「, new SqlParameter (」@author「, userSuppliedAuthor) ) ;
public virtual System.Data.Entity.Infrastructure.DbSqlQuery SqlQuery (string sql, params object[] parameters);
abstract member SqlQuery : string * obj[] -> System.Data.Entity.Infrastructure.DbSqlQuery
override this.SqlQuery : string * obj[] -> System.Data.Entity.Infrastructure.DbSqlQuery
Public Overridable Function SqlQuery (sql As String, ParamArray parameters As Object()) As DbSqlQuery
參數
- sql
- String
SQL 查詢字串。
- parameters
- Object[]
要套用至 SQL 查詢字串的參數。 如果使用輸出參數,則在完整讀取結果之前,將無法使用其值。 這是因為 DbDataReader 的基礎行為,如需詳細資訊,請參閱 http://go.microsoft.com/fwlink/?LinkID=398589 。
傳回
物件 DbSqlQuery ,會在列舉查詢時執行查詢。