/// <summary> /// Get Aircraft /// links: /// docLink: http://sql2x.org/documentationLink/06760f02-f3ec-45ad-bbfe-db43d7a0378f /// </summary> /// <template>DotNetFrameworkWithDurian</template> /// <cardinality>Many</cardinality> public List <AircraftIndexWithFilterData> AircraftIndexWithFilter() { var ret = new List <AircraftIndexWithFilterData>(); string sql = @" select [a].aircraft_name ,[atr].aircraft_type_name ,[acr].aircraft_configuration_name ,[abr].aircraft_body_name ,[p].product_name ,[du].default_user_name ,[a].aircraft_type_rcd ,[a].aircraft_configuration_rcd ,[a].aircraft_body_rcd ,[a].aircraft_measurement_id ,[a].product_id ,[a].operational_date_time ,[a].first_flight_date_time ,[a].engine_type ,[a].passenger_capacity ,[a].user_id ,[a].date_time ,[a].aircraft_id from aircraft as [a] inner join aircraft_type_ref as [atr] on [atr].aircraft_type_rcd = [a].aircraft_type_rcd inner join aircraft_configuration_ref as [acr] on [acr].aircraft_configuration_rcd = [a].aircraft_configuration_rcd inner join aircraft_body_ref as [abr] on [abr].aircraft_body_rcd = [a].aircraft_body_rcd left join aircraft_measurement as [am] on [am].aircraft_measurement_id = [a].aircraft_measurement_id left join product as [p] on [p].product_id = [a].product_id inner join default_user as [du] on [du].default_user_id = [a].user_id where 1 = 1 "; using (var conn = new SqlConnection(Conn.ConnectionString)) { conn.Open(); using (var command = new SqlCommand(sql, conn)) { command.CommandText = sql; // Logging log = Logging.PerformanceTimeStart("AircraftIndexWithFilter"); IDataReader reader = command.ExecuteReader(CommandBehavior.SingleResult); // log.PerformanceTimeStop(sql, command); var ordinals = new AircraftIndexWithFilterDataOrdinals(reader); while (reader.Read()) { var data = new AircraftIndexWithFilterData(); data.Populate(reader, ordinals); ret.Add(data); } reader.Close(); } return(ret); } }
// use ordinals to speed up access to DataReader // links: // crud definition: https://en.wikipedia.org/wiki/Create,_read,_update_and_delete // docLink: http://sql2x.org/documentationLink/327451c3-64a8-4de8-b359-76742d634497 // parameters: // reader: IDataReader from SQLClient public void Populate(IDataReader reader, AircraftIndexWithFilterDataOrdinals ordinals) { if (!reader.IsDBNull(ordinals.AircraftName)) { AircraftName = reader.GetString(ordinals.AircraftName); } if (!reader.IsDBNull(ordinals.AircraftTypeName)) { AircraftTypeName = reader.GetString(ordinals.AircraftTypeName); } if (!reader.IsDBNull(ordinals.AircraftConfigurationName)) { AircraftConfigurationName = reader.GetString(ordinals.AircraftConfigurationName); } if (!reader.IsDBNull(ordinals.AircraftBodyName)) { AircraftBodyName = reader.GetString(ordinals.AircraftBodyName); } if (!reader.IsDBNull(ordinals.ProductName)) { ProductName = reader.GetString(ordinals.ProductName); } if (!reader.IsDBNull(ordinals.DefaultUserName)) { DefaultUserName = reader.GetString(ordinals.DefaultUserName); } if (!reader.IsDBNull(ordinals.AircraftTypeRcd)) { AircraftTypeRcd = reader.GetString(ordinals.AircraftTypeRcd); } if (!reader.IsDBNull(ordinals.AircraftConfigurationRcd)) { AircraftConfigurationRcd = reader.GetString(ordinals.AircraftConfigurationRcd); } if (!reader.IsDBNull(ordinals.AircraftBodyRcd)) { AircraftBodyRcd = reader.GetString(ordinals.AircraftBodyRcd); } if (!reader.IsDBNull(ordinals.AircraftMeasurementId)) { AircraftMeasurementId = reader.GetGuid(ordinals.AircraftMeasurementId); } if (!reader.IsDBNull(ordinals.ProductId)) { ProductId = reader.GetGuid(ordinals.ProductId); } if (!reader.IsDBNull(ordinals.OperationalDateTime)) { OperationalDateTime = reader.GetDateTime(ordinals.OperationalDateTime); } if (!reader.IsDBNull(ordinals.FirstFlightDateTime)) { FirstFlightDateTime = reader.GetDateTime(ordinals.FirstFlightDateTime); } if (!reader.IsDBNull(ordinals.EngineType)) { EngineType = reader.GetString(ordinals.EngineType); } if (!reader.IsDBNull(ordinals.PassengerCapacity)) { PassengerCapacity = reader.GetInt32(ordinals.PassengerCapacity); } if (!reader.IsDBNull(ordinals.UserId)) { UserId = reader.GetGuid(ordinals.UserId); } if (!reader.IsDBNull(ordinals.DateTime)) { DateTime = reader.GetDateTime(ordinals.DateTime); } if (!reader.IsDBNull(ordinals.AircraftId)) { AircraftId = reader.GetGuid(ordinals.AircraftId); } }