2012年4月10日火曜日

StructuralType 結果を返すクエリの実行方法 (EntityClient)


このトピックでは、EntityCommand オブジェクトを使用して概念モデルに対してコマンドを実行する方法と、EntityDataReader を使用して StructuralType の結果を取得する方法を示します。 EntityType、RowType および ComplexType クラスは、StructuralType クラスから派生します。

この例のコードを実行するには

  1. AdventureWorks Sales Model をプロジェクトに追加して、Entity Framework を使用するようにプロジェクトを構成します。 詳細については、「Entity Data Model ウィザードを使用する方法 (Entity Framework)」を参照してください。


    Cでセグメンテーションフォールトを修正する方法
  2. アプリケーションのコード ページで、次の using ステートメント (Visual Basic の場合は Imports) を追加します。


    OSPFは何ですか
     using System; using System.Collections.Generic; using System.Collections; using System.Data.Common; using System.Data; using System.IO; using System.Data.SqlClient; using System.Data.EntityClient; using System.Data.Metadata.Edm;  

この例は、EntityType の結果を返すクエリを実行します。 次のクエリを引数として ExecuteStructuralTypeQuery 関数に渡すと、この関数は、Products に関する詳細を表示します。


jの構文を記述する方法
 SELECT VALUE Product FROM AdventureWorksEntities.Products AS Product  

パラメーター化されたクエリを渡す場合は、次のように、EntityCommand オブジェクトの Parameters プロパティに EntityParameter オブジェクトを追加します。


 SELECT VALUE product FROM AdventureWorksEntities.Products      AS product where product.ListPrice >= @price  
 static void ExecuteStructuralTypeQuery(string esqlQuery) {     if (esqlQuery.Length == 0)     {         Console.WriteLine("The query string is empty.");         return;     }      using (EntityConnection conn =         new EntityConnection("name=AdventureWorksEntities"))     {         conn.Open();          // Create an EntityCommand.         using (EntityCommand cmd = conn.CreateCommand())         {             cmd.CommandText = esqlQuery;             // Execute the command.             using (EntityDataReader rdr =                 cmd.ExecuteReader(CommandBehavior.SequentialAccess))             {                 // Start reading results.                 while (rdr.
Read()) { StructuralTypeVisitRecord(rdr as IExtendedDataRecord); } } } conn.Close(); } } static void StructuralTypeVisitRecord(IExtendedDataRecord record) { int fieldCount = record.DataRecordInfo.FieldMetadata.Count; for (int fieldIndex = 0; fieldIndex < fieldCount; fieldIndex++) { Console.Write(record.GetName(fieldIndex) + ": "); // If the field is flagged as DbNull, the shape of the value is undetermined. // An attempt to get such a value may trigger an exception. if (record.IsDBNull(fieldIndex) == false) { BuiltInTypeKind fieldTypeKind = record.DataRecordInfo.FieldMetadata[fieldIndex]. FieldType.TypeUsage.EdmType.BuiltInTypeKind; // The EntityType, ComplexType and RowType are structural types // that have members. // Read only the PrimitiveType members of this structural type. if (fieldTypeKind == BuiltInTypeKind.PrimitiveType) { // Primitive types are surfaced as plain objects. Console.WriteLine(record.GetValue(fieldIndex).

These are our most popular posts:

第 2 回 「クエリの実行方法を理解する」~ システム構築 ~

2001年11月30日 ... 実行プラン. 第 1 回で説明したとおり、1 つのテーブルに対するクエリの実行方法は、 たとえクラスタ化インデックスや非クラスタ化インデックスがテーブルに設定されていた としても、データ量や検索条件などの様々な条件によっては、インデックス ... read more

StructuralType 結果を返すクエリの実行方法 (EntityClient)

このトピックでは、EntityCommand オブジェクトを使用して概念モデルに対してコマンド を実行する方法と、EntityDataReader を使用して StructuralType の結果を取得する 方法を示します。 EntityType、RowType および ComplexType クラス ... read more

ステータス メッセージ クエリの実行方法

Configuration Manager コンソールで、[System Center Configuration Manager]、[ サイト データベース]、[システム ステータス]、[ステータス メッセージ クエリ]の順に 移動します。 結果ウィンドウで、実行するステータス メッセージ クエリを右クリックし、[ ... read more

クエリ実行方法による表示時間の遅延について --Access Club 超初心者 FORUM--

クエリ実行方法による表示時間の遅延について ... accessのクエリ画面にてクエリ名を クリックして直接実行する場合とモジュールからクエリを実行する場合で、実際にデータ が表示されるまでの時間が後者の方がかなり遅い(1、2分ぐらい) ... read more

0 件のコメント:

コメントを投稿