private void button14_Click(object sender, EventArgs e) { string testType = "Stored Procedure via Entity Client"; _watch.Start(testType); for (int i = 0; i < 50; i++) { using (EntityConnection conn = new EntityConnection(ConfigurationManager.ConnectionStrings["OrderITEntities"].ConnectionString)) { conn.Open(); using (EntityCommand comm = new EntityCommand("OrderITEntities.GetCustomersForTest", conn)) { comm.CommandType = CommandType.StoredProcedure; comm.Parameters.AddWithValue("name", "C%"); using (EntityDataReader reader = comm.ExecuteReader(CommandBehavior.SequentialAccess)) { while (reader.Read()) { var x = reader.GetValue(0); var x1 = reader.GetValue(1); var x2 = reader.GetValue(2); var x3 = reader.GetValue(3); var x4 = reader.GetValue(4); } } } } _watch.SaveLap(); } _watch.Stop(); }
private static void FunWithEntityDataReader() { using (EntityConnection cn = new EntityConnection("name = AutoLotEntities")) { cn.Open(); string query = "SELECT VALUE car FROM AutoLotEntities.Cars As Car"; //创建一个命令对象 using (EntityCommand cmd = cn.CreateCommand()) { cmd.CommandText = query; //使用EntityDataReader获取得到的数据 using (EntityDataReader dr = cmd.ExecuteReader(System.Data.CommandBehavior.SequentialAccess)) { while (dr.Read()) { Console.WriteLine("******Record*******"); Console.WriteLine("ID:{0}", dr["CarID"]); Console.WriteLine("Make:{0}", dr["Make"]); Console.WriteLine("Color:{0}", dr["Color"]); Console.WriteLine("Pet Name:{0}", dr["CarNickName"]); } } } } }
static public void StoredProcWithEntityCommand() { //<snippetStoredProcWithEntityCommand> using (EntityConnection conn = new EntityConnection("name=SchoolEntities")) { conn.Open(); // Create an EntityCommand. using (EntityCommand cmd = conn.CreateCommand()) { cmd.CommandText = "SchoolEntities.GetStudentGrades"; cmd.CommandType = CommandType.StoredProcedure; EntityParameter param = new EntityParameter(); param.Value = 2; param.ParameterName = "StudentID"; cmd.Parameters.Add(param); // Execute the command. using (EntityDataReader rdr = cmd.ExecuteReader(CommandBehavior.SequentialAccess)) { // Read the results returned by the stored procedure. while (rdr.Read()) { Console.WriteLine("ID: {0} Grade: {1}", rdr["StudentID"], rdr["Grade"]); } } } conn.Close(); } //</snippetStoredProcWithEntityCommand> }
private static void FunWIthEntityDataReader() { // 基于*.config文件创建一个连接对象 using (EntityConnection cn = new EntityConnection("name=AutoLotEntities")) { cn.Open(); // 构建一个Entity SQL查询 string query = "SELECT VALUE car FROM AutoLotEntities.Cars AS car"; // 创建一个命令对象 using (EntityCommand cmd = cn.CreateCommand()) { cmd.CommandText = query; // 最后,获取数据阅读器并处理得到的记录 using (EntityDataReader dr = cmd.ExecuteReader(CommandBehavior.SequentialAccess)) { while (dr.Read()) { Console.WriteLine("***** RECORD *****"); Console.WriteLine("ID: {0}", dr["CarID"]); Console.WriteLine("Make: {0}", dr["Make"]); Console.WriteLine("Color: {0}", dr["Color"]); Console.WriteLine("Pet Name: {0}", dr["CarNickname"]); Console.WriteLine(); } } } } }
public override void ExecuteESqlQuery(IConnectionInfo cxInfo, string query) { EntityConnection connection; object dbContext = base.InstantiateBaseContext(cxInfo); CheckForUnpatchedCx(dbContext); string eSqlCxString = GetESqlCxString(dbContext); EntityConnectionStringBuilder builder = new EntityConnectionStringBuilder(eSqlCxString); string str2 = builder["metadata"] as string; if ((str2 != null) && str2.Trim().ToUpperInvariant().StartsWith("READER:")) { connection = new EntityConnection(GetObjectContext(dbContext).MetadataWorkspace, (DbConnection)GetIDbConnection(dbContext)); } else { connection = new EntityConnection(eSqlCxString); } using (connection) { EntityCommand command = new EntityCommand(query, connection); connection.Open(); command.ExecuteReader(CommandBehavior.SequentialAccess).Dump <EntityDataReader>(); } }
static public void PolymorphicQuery() { //<snippetPolymorphicQuery> using (EntityConnection conn = new EntityConnection("name=SchoolEntities")) { conn.Open(); // Create a query that specifies to // get a collection of only OnsiteCourses. string esqlQuery = @"SELECT VAlUE onsiteCourse FROM OFTYPE(SchoolEntities.Courses, SchoolModel.OnsiteCourse) AS onsiteCourse"; using (EntityCommand cmd = new EntityCommand(esqlQuery, conn)) { // Execute the command. using (DbDataReader rdr = cmd.ExecuteReader(CommandBehavior.SequentialAccess)) { // Start reading. while (rdr.Read()) { // Display OnsiteCourse's location. Console.WriteLine("CourseID: {0} ", rdr["CourseID"]); Console.WriteLine("Location: {0} ", rdr["Location"]); } } } } //</snippetPolymorphicQuery> }
private void button9_Click(object sender, EventArgs e) { string testType = "Select Customers With EF and EntitySQL via Entity Client. Plan Cache Enabled: " + UseCompiledQuery.Checked; _watch.Start(testType); for (int i = 0; i < 50; i++) { using (EntityConnection conn = new EntityConnection(ConfigurationManager.ConnectionStrings["OrderITEntities"].ConnectionString)) { conn.Open(); using (EntityCommand comm = new EntityCommand("SELECT VALUE c FROM OFTYPE(OrderITEntities.Companies, OrderITModel.Customer) AS c WHERE c.name LIKE @name", conn)) { comm.EnablePlanCaching = enablePlanCaching.Checked; comm.Parameters.AddWithValue("name", "C%"); using (EntityDataReader reader = comm.ExecuteReader(CommandBehavior.SequentialAccess)) { while (reader.Read()) { var x = reader.GetValue(0); var x1 = reader.GetValue(1); var x2 = reader.GetValue(2); var x3 = reader.GetValue(3); var x4 = reader.GetValue(4); } } } } _watch.SaveLap(); } _watch.Stop(); }
//</snippeteSQLRefTypes> //string esqlQuery = @"SELECT VALUE AVG(p.ListPrice) FROM AdventureWorksEntities.Products as p"; //<snippeteSQLPrimitiveTypes> static void ExecutePrimitiveTypeQuery(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()) { IExtendedDataRecord record = rdr as IExtendedDataRecord; // For PrimitiveType // the record contains exactly one field. int fieldIndex = 0; Console.WriteLine("Value: " + record.GetValue(fieldIndex)); } } } conn.Close(); } }
public void QueryContactsEntityConecction() { using (var con = new EntityConnection("name=PEF")) { con.Open(); EntityCommand cmd = con.CreateCommand(); cmd.CommandText = "SELECT VALUE c " + "FROM PEF.Contact AS c " + "WHERE c.FirstName = 'Robert'"; Dictionary <int, string> dict = new Dictionary <int, string>(); using (EntityDataReader rdr = cmd.ExecuteReader(CommandBehavior.SequentialAccess | CommandBehavior.CloseConnection)) { while (rdr.Read()) { int a = rdr.GetInt32(0); var b = rdr.GetString(1); dict.Add(a, b); Console.WriteLine("{0} {1}", a, b); } } Console.Write("Press Enter..."); Console.ReadLine(); } #endregion }
private List <Product> Query(string connectionString, string commandString) { var connection = new EntityConnection(connectionString); connection.Open(); var command = new EntityCommand(commandString, connection); var reader = command.ExecuteReader(CommandBehavior.SequentialAccess); var list = new List <Product>(); do { while (reader.Read()) { var values = new List <object>(); for (var i = 0; i < reader.FieldCount; i++) { values.Add(reader.GetFieldValue <object>(i)); } list.Add(CreateProduct(values)); } }while (reader.NextResult()); connection.Close(); return(list); }
static private void PolymorphicQuery() { //<snippetPolymorphicQuery> using (EntityConnection conn = new EntityConnection("name=SchoolEntities")) { conn.Open(); // Create a query that specifies to // get a collection of only Students // with enrollment dates from // a collection of People. string esqlQuery = @"SELECT Student.LastName, Student.EnrollmentDate FROM OFTYPE(SchoolEntities.Person, SchoolModel.Student) AS Student"; using (EntityCommand cmd = new EntityCommand(esqlQuery, conn)) { // Execute the command. using (DbDataReader rdr = cmd.ExecuteReader(CommandBehavior.SequentialAccess)) { // Start reading. while (rdr.Read()) { // Display student's last name and enrollment date. Console.Write(rdr["LastName"] + " "); Console.WriteLine(rdr["EnrollmentDate"]); } } } } //</snippetPolymorphicQuery> }
public void Verify_querying_database_with_EntityClient_works() { const string commandText = "SELECT C.CompanyName, C.Location FROM NorthwindEntities.Customers AS C WHERE C.CustomerID LIKE @CustomerID"; using (var connection = new EntityConnection(NorthwindEntitiesConnectionString)) { connection.Open(); using (var command = new EntityCommand(commandText, connection)) { command.Parameters.AddWithValue("CustomerID", "A%"); using (var reader = command.ExecuteReader(CommandBehavior.SequentialAccess)) { foreach (var expectedResult in expectedResults) { reader.Read(); Assert.Equal(expectedResult.Name, reader["CompanyName"]); Assert.Equal(expectedResult.Location, ((DbGeography)reader["Location"]).AsText()); } Assert.False(reader.Read()); } } } Console.WriteLine(); }
private static void FunWithEntityDataReader() { // Make a connection object, based on our *.config file. using (EntityConnection cn = new EntityConnection("name=AutoLotEntities")) { cn.Open(); // Now build an Entity SQL query. string query = "SELECT VALUE car FROM AutoLotEntities.Cars AS car"; // Create a command object. using (EntityCommand cmd = cn.CreateCommand()) { cmd.CommandText = query; // Finally, get the data reader and process records. using (EntityDataReader dr = cmd.ExecuteReader(CommandBehavior.SequentialAccess)) { while (dr.Read()) { Console.WriteLine("***** RECORD *****"); Console.WriteLine("ID: {0}", dr["CarID"]); Console.WriteLine("Make: {0}", dr["Make"]); Console.WriteLine("Color: {0}", dr["Color"]); Console.WriteLine("Pet Name: {0}", dr["CarNickname"]); Console.WriteLine(); } } } } }
//Querying with EntityClient to return Streamed Data public void QueryContacts() { using (EntityConnection conn = new EntityConnection("name=PEF")) { conn.Open(); var queryString = "SELECT VALUE c " + "FROM PEF.Contact AS c " + "WHERE c.FirstName = 'Robert'"; EntityCommand cmd = conn.CreateCommand(); cmd.CommandText = queryString; using (EntityDataReader rdr = cmd.ExecuteReader(System.Data.CommandBehavior.SequentialAccess | System.Data.CommandBehavior.CloseConnection)) { while (rdr.Read()) { var firsName = rdr.GetString(1); var lastName = rdr.GetString(2); var tittle = rdr.GetString(3); Console.WriteLine("{0} {1} {2}", tittle.Trim(), firsName.Trim(), lastName); } } conn.Close(); Console.Write("Presiona Enter"); Console.ReadLine(); } }
public static IEnumerable <T> ExecuteStoredProc <T>(EntityConnection conn, string procedure, string[] paramNames, object[] paramValues) where T : new() { if (conn.State != System.Data.ConnectionState.Open) { conn.Open(); } var command = new EntityCommand { CommandType = CommandType.StoredProcedure, CommandText = procedure, Connection = conn, }; for (int i = 0; i < paramNames.Length; i++) { command.Parameters.AddWithValue(paramNames[i], paramValues[i]); } var list = new List <T>(); using (var reader = command.ExecuteReader()) { // get GUID values from the reader here, // and put them in the list list = reader.MapToList <T>(); reader.Close(); } return(list); }
/// <summary> /// ESQL /// </summary> static void RSQL() { // 这个就是App.config中的数据库连接串 using (var con = new EntityConnection("name=SchoolDBEntities")) { //打开连接 con.Open(); //通过连接创建一个命令对象 EntityCommand cmd = con.CreateCommand(); //设置要执行的SQL语句或存储过程 cmd.CommandText = "select value s from SchoolDBEntities.StudentSets as s"; //定义一个接收字典 Dictionary <int, string> dic = new Dictionary <int, string>(); //创建一个reader来进行数据读取 using (EntityDataReader rd = cmd.ExecuteReader(System.Data.CommandBehavior.SequentialAccess | System.Data.CommandBehavior.CloseConnection)) { while (rd.Read()) { int a = rd.GetInt32(0); string b = rd.GetString(1); dic.Add(a, b); } } } }
static public void NavigateWithNavOperatorWithEntityCommand() { //<snippetNavigateWithNavOperatorWithEntityCommand> using (EntityConnection conn = new EntityConnection("name=AdventureWorksEntities")) { conn.Open(); // Create an EntityCommand. using (EntityCommand cmd = conn.CreateCommand()) { // Create an Entity SQL query. string esqlQuery = @"SELECT address.AddressID, (SELECT VALUE DEREF(soh) FROM NAVIGATE(address, AdventureWorksModel.FK_SalesOrderHeader_Address_BillToAddressID) AS soh) FROM AdventureWorksEntities.Addresses AS address"; cmd.CommandText = esqlQuery; // Execute the command. using (DbDataReader rdr = cmd.ExecuteReader(CommandBehavior.SequentialAccess)) { // Start reading. while (rdr.Read()) { Console.WriteLine(rdr["AddressID"]); } } } conn.Close(); } //</snippetNavigateWithNavOperatorWithEntityCommand> }
private void button2_Click(object sender, EventArgs e) { cn = new EntityConnection("Name=EcoFarm_DBEntities"); cn.Open(); cmd = cn.CreateCommand(); cmd.CommandText = "SELECT VALUE i FROM EcoFarm_DBEntities.Invoice_products as i WHERE i.Name = @product"; cmd.Parameters.AddWithValue("product", ProductsCB.SelectedItem); DbDataReader dbReader = cmd.ExecuteReader(CommandBehavior.SequentialAccess); dt.Columns.Add("col", "Product code"); dt.Columns.Add("col", "Name"); dt.Columns.Add("col", "Units"); dt.Columns.Add("col", "Number of units"); dt.Columns.Add("col", "Unit price"); dt.Columns.Add("col", "Total price"); dt.Columns.Add("col", "Invoice number"); while (dbReader.Read()) { dt.Rows.Add( dbReader["Product_code"].ToString(), dbReader["Name"].ToString(), dbReader["Units"].ToString(), dbReader["Number_of_units"].ToString(), dbReader["Unit_price"].ToString(), dbReader["Total_price"].ToString(), dbReader["Invoice_Number"].ToString() ); } dbReader.Close(); cn.Close(); }
//</snippeteSQLStructuralTypes> //string esqlQuery = @"SELECT REF(p) FROM AdventureWorksEntities.Products as p"; //<snippeteSQLRefTypes> static public void ExecuteRefTypeQuery(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()) { RefTypeVisitRecord(rdr as IExtendedDataRecord); } } } conn.Close(); } }
private void button34_Click(object sender, EventArgs e) { using (EntityConnection conn = new EntityConnection(Parameters.ConnectionString)) { using (EntityCommand comm = new EntityCommand("SELECT value o FROM OrderITEntities.OrderDetails AS o", conn)) { conn.Open(); EntityDataReader reader = comm.ExecuteReader(CommandBehavior.SequentialAccess); using (var ctx = new OrderITEntities()) { textConsole.Text = String.Empty; var x = ctx.Translate <OrderDetail>(reader).ToList(); var t = x[0].Discount; //while (reader.Read()) { //textConsole.Text += reader[0].ToString() + "-" + reader[1].ToString() + "-" + reader[2].ToString() + "\r\n"; //} } } } /*using (EntityConnection conn = new EntityConnection(Parameters.ConnectionString)) { * using (EntityCommand comm = new EntityCommand("SELECT VALUE o FROM OrderITEntities.Orders AS o", conn)) { * conn.Open(); * EntityDataReader reader = comm.ExecuteReader(CommandBehavior.SequentialAccess); * textConsole.Text = String.Empty; * while (reader.Read()) { * textConsole.Text += reader[0].ToString() + "-" + reader[1].ToString() + "-" + reader[2].ToString() + "\r\n"; * } * } * }*/ }
static void TestProduct(string esqlQuery, Dictionary <string, object> parametes) { using (EntityConnection conn = new EntityConnection("name=AdventureWorksEntities")) { conn.Open(); try { // Create an EntityCommand. using (EntityCommand cmd = conn.CreateCommand()) { cmd.CommandText = esqlQuery; foreach (KeyValuePair <string, object> kvp in parametes) { cmd.Parameters.AddWithValue(kvp.Key, kvp.Value); } // Execute the command. using (EntityDataReader rdr = cmd.ExecuteReader(CommandBehavior.SequentialAccess)) { // The result returned by this query contains // Address complex Types. while (rdr.Read()) { int col = rdr.FieldCount; if (rdr.FieldCount > 3) { col = 3; } for (int i = 0; i < col; i++) { Console.Write("{0} ", rdr[i]); } Console.WriteLine(); if (rdr.Depth > 0) { // Display Address information. DbDataRecord nestedRecord = rdr[0] as DbDataRecord; for (int i = 0; i < nestedRecord.FieldCount; i++) { Console.WriteLine(" " + nestedRecord.GetName(i) + ": " + nestedRecord.GetValue(i)); } } } } } } catch (EntityException ex) { Console.WriteLine(ex.ToString()); } conn.Close(); } }
async private void button31_Click(object sender, EventArgs e) { //其實用方法就可以了 //Dynamic LINQ 讓 LINQ 的世界變的更美好 //nuget system.linq.dynamic //using system.linq.dynamic db.Database.Log = Console.WriteLine; var query = db.Customers.Where("City == @0 and Orders.Count >= @1", "London", 10). OrderBy("CompanyName"). Select("New (CompanyName as Name, Phone)"); Console.WriteLine(query); var result = await query.ToListAsync(); this.dataGridView1.DataSource = result; //============================ using (EntityConnection conn = new EntityConnection("name=AdventureWorksEntities")) { conn.Open(); // Create a query that takes two parameters. string esqlQuery = @"SELECT VALUE Contact FROM AdventureWorksEntities.Contacts AS Contact WHERE Contact.LastName = @ln AND Contact.FirstName = @fn"; using (EntityCommand cmd = new EntityCommand(esqlQuery, conn)) { // Create two parameters and add them to // the EntityCommand's Parameters collection EntityParameter param1 = new EntityParameter(); param1.ParameterName = "ln"; param1.Value = "Adams"; EntityParameter param2 = new EntityParameter(); param2.ParameterName = "fn"; param2.Value = "Frances"; cmd.Parameters.Add(param1); cmd.Parameters.Add(param2); using (DbDataReader rdr = cmd.ExecuteReader(CommandBehavior.SequentialAccess)) { // Iterate through the collection of Contact items. while (rdr.Read()) { this.listBox1.Items.Add(rdr["FirstName"]); this.listBox1.Items.Add(rdr["LastName"]); } } } conn.Close(); } }
public void DesignTime1() { using (EntityCommand cmd = new EntityCommand("SELECT t.Name FROM SchemaInformation.Tables AS t", (EntityConnection)context.Connection)) { using (DbDataReader reader = cmd.ExecuteReader(CommandBehavior.SequentialAccess)) { ObjectDumper.Write(reader); } } ObjectDumper.Write(context.Tables); }
static void Main(string[] args) { //Database.SetInitializer(new CreateDatabaseIfNotExists<UnderwritingEntitiesContainer>()); //EF_concurrencyfeatures(); using (UnderwritingEntitiesContainer db = new UnderwritingEntitiesContainer()) { //db.Database.Log = Console.WriteLine; ////use Db table name for Sqlquery ////tightly coupled code //var headers = db.headers.SqlQuery("Select * from uw.header"); //foreach(var h in headers) //{ // Console.WriteLine("ID" + h.Id + " value " + h.PolicyReference); //} var objectContext = (db as IObjectContextAdapter).ObjectContext; RunUncompiledQuery(objectContext); RunCompiledQuery(); //Use EntitySql //strongly typed using (EntityConnection connection = objectContext.Connection as EntityConnection) { connection.Open(); EntityCommand cmd = connection.CreateCommand(); cmd.CommandText = "Select value header from UnderwritingEntitiesContainer.headers as header"; EntityDataReader dr = cmd.ExecuteReader(CommandBehavior.SequentialAccess); while (dr.Read()) { Console.WriteLine("id " + dr["HeaderId"]); Console.WriteLine("value " + dr["PolicyReference"]); } //ObjectQuery string query = "select value h from UnderwritingEntitiesContainer.headers as h"; // Use for filter - ObjectParameter foreach (header h in new ObjectQuery <header>(query, objectContext)) { Console.WriteLine("id " + h.HeaderId + " policy " + h.PolicyReference); } connection.Close(); } } Console.ReadKey(); }
private static void EntityFrameworkSample() { // Entity SQLでの参照 Console.WriteLine("-- Entity SQL"); using (EntityConnection connection = new EntityConnection("name=SampleContext")) { connection.Open(); string query1 = "SELECT m.id, m.name, m.age FROM SampleContext.member AS m WHERE m.age >= @age"; using (EntityCommand cmd = new EntityCommand(query1, connection)) { cmd.Parameters.AddWithValue("age", 25); using (DbDataReader rdr = cmd.ExecuteReader(CommandBehavior.SequentialAccess)) { while (rdr.Read()) { Console.WriteLine("id={0},name={1},age={2}", rdr["id"], rdr["name"], rdr["age"]); } } } } using (var db = new SampleContext()) { // LINQ to Entitiesでの参照 Console.WriteLine("-- LINQ to Entities"); var query1 = from m in db.member where m.age >= 25 select m; foreach (var member in query1) { Console.WriteLine("id={0},name={1},age={2}", member.id, member.name, member.age); } // 別の書き方での参照 Console.WriteLine("-- LINQ to Entities 2"); var query2 = db.member.Where(m => m.age >= 25); foreach (var member in query2) { Console.WriteLine("id={0},name={1},age={2}", member.id, member.name, member.age); } // Entity Framewokでの更新 var carol = db.member.Find(3); carol.age = 60; db.SaveChanges(); } }
public FunctionDetailsReader(EntityCommand command, Version storeSchemaModelVersion) { Debug.Assert(command != null, "command != null"); Debug.Assert(storeSchemaModelVersion != null, "storeSchemaModelVersion != null"); _rowViewFactoryMethod = storeSchemaModelVersion < EntityFrameworkVersion.Version3 ? (values) => new FunctionDetailsV1RowView(values) : (Func <object[], FunctionDetailsRowView>)((values) => new FunctionDetailsV3RowView(values)); _command = command; _reader = _command.ExecuteReader(CommandBehavior.SequentialAccess); }
public void GetSomeCustomersUsingESQLRawQuerying() { var context = new SalesEntities(); //I needed this in the test, but you shouldn't need it in regular code using (var conn = new EntityConnection("name=SalesEntities")) { conn.Open(); EntityCommand cmd = conn.CreateCommand(); cmd.CommandText = "SELECT VALUE c FROM SalesEntities.Customers AS c " + "WHERE c.FirstName='Robert' ORDER BY c.LastName"; EntityDataReader rdr = cmd.ExecuteReader(CommandBehavior.SequentialAccess | CommandBehavior.CloseConnection); } }
protected void InitializeReader(EntityConnection connection, IEnumerable <EntityStoreSchemaFilterEntry> filters) { _connection = connection; _command = EntityStoreSchemaGeneratorDatabaseSchemaLoader.CreateFilteredCommand( _connection, FunctionDetailSql, FunctionOrderByClause, EntityStoreSchemaFilterObjectTypes.Function, new List <EntityStoreSchemaFilterEntry>(filters), new string[] { FunctionDetailAlias }); _reader = _command.ExecuteReader(CommandBehavior.SequentialAccess); }
static private void ComplexTypeWithEntityCommand() { //<snippetComplexTypeWithEntityCommand> using (EntityConnection conn = new EntityConnection("name=CustomerComplexAddrContext")) { conn.Open(); // Create a query that returns Address complex type. string esqlQuery = @"SELECT VALUE customers FROM CustomerComplexAddrContext.CCustomers AS customers WHERE customers.CustomerId < 3"; try { // Create an EntityCommand. using (EntityCommand cmd = conn.CreateCommand()) { cmd.CommandText = esqlQuery; // Execute the command. using (EntityDataReader rdr = cmd.ExecuteReader(CommandBehavior.SequentialAccess)) { // The result returned by this query contains // Address complex Types. while (rdr.Read()) { // Display CustomerID Console.WriteLine("Customer ID: {0}", rdr["CustomerId"]); // Display Address information. DbDataRecord nestedRecord = rdr["Address"] as DbDataRecord; Console.WriteLine("Address:"); for (int i = 0; i < nestedRecord.FieldCount; i++) { Console.WriteLine(" " + nestedRecord.GetName(i) + ": " + nestedRecord.GetValue(i)); } } } } } catch (EntityException ex) { Console.WriteLine(ex.ToString()); } conn.Close(); } //</snippetComplexTypeWithEntityCommand> }
static private void ReturnNestedCollectionWithEntityCommand() { //<snippetReturnNestedCollectionWithEntityCommand> using (EntityConnection conn = new EntityConnection("name=AdventureWorksEntities")) { conn.Open(); try { // Create an EntityCommand. using (EntityCommand cmd = conn.CreateCommand()) { // Create a nested query. string esqlQuery = @"Select c.ContactID, c.SalesOrderHeader From AdventureWorksEntities.Contact as c"; cmd.CommandText = esqlQuery; // Execute the command. using (EntityDataReader rdr = cmd.ExecuteReader(CommandBehavior.SequentialAccess)) { // The result returned by this query contains // ContactID and a nested collection of SalesOrderHeader items. // associated with this Contact. while (rdr.Read()) { // the first column contains Contact ID. Console.WriteLine("Contact ID: {0}", rdr["ContactID"]); // The second column contains a collection of SalesOrderHeader // items associated with the Contact. DbDataReader nestedReader = rdr.GetDataReader(1); while (nestedReader.Read()) { Console.WriteLine(" SalesOrderID: {0} ", nestedReader["SalesOrderID"]); Console.WriteLine(" OrderDate: {0} ", nestedReader["OrderDate"]); } } } } } catch (EntityException ex) { Console.WriteLine(ex.ToString()); } conn.Close(); } //</snippetReturnNestedCollectionWithEntityCommand> }