Ejemplo n.º 1
0
        /// <summary>
        /// Get Airline
        /// links:
        ///  docLink: http://sql2x.org/documentationLink/06760f02-f3ec-45ad-bbfe-db43d7a0378f
        /// </summary>
        /// <template>DotNetFrameworkWithDurian</template>
        /// <cardinality>Many</cardinality>
        public List <GetAirlineIndexWithFilterData> GetAirlineIndexWithFilter()
        {
            var    ret = new List <GetAirlineIndexWithFilterData>();
            string sql = @"
select 
     [a].airline_name
    ,[atr].airline_type_name
    ,[a].legal_name
    ,[p].product_name
    ,[du].default_user_name
    ,[a].airline_type_rcd
    ,[a1].address_one
    ,[a1].address_two
    ,[a1].address_three
    ,[a1].city
    ,[a1].street
    ,[a1].state
    ,[a1].district
    ,[a1].province
    ,[a1].zip_code
    ,[a1].po_box
    ,[a1].comment
    ,[a].address_id
    ,[a].product_id
    ,[a].stock_market_symbol
    ,[a].aircraft_count
    ,[a].user_id
    ,[a].date_time
    ,[a].airline_id
from airline as [a]
inner join airline_type_ref as [atr] on [atr].airline_type_rcd = [a].airline_type_rcd
left join address as [a1] on [a1].address_id = [a].address_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("GetAirlineIndexWithFilter");
                    IDataReader reader = command.ExecuteReader(CommandBehavior.SingleResult);
                    // log.PerformanceTimeStop(sql, command);

                    var ordinals = new GetAirlineIndexWithFilterDataOrdinals(reader);

                    while (reader.Read())
                    {
                        var data = new GetAirlineIndexWithFilterData();
                        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, GetAirlineIndexWithFilterDataOrdinals ordinals)
 {
     if (!reader.IsDBNull(ordinals.AirlineName))
     {
         AirlineName = reader.GetString(ordinals.AirlineName);
     }
     if (!reader.IsDBNull(ordinals.AirlineTypeName))
     {
         AirlineTypeName = reader.GetString(ordinals.AirlineTypeName);
     }
     if (!reader.IsDBNull(ordinals.LegalName))
     {
         LegalName = reader.GetString(ordinals.LegalName);
     }
     if (!reader.IsDBNull(ordinals.ProductName))
     {
         ProductName = reader.GetString(ordinals.ProductName);
     }
     if (!reader.IsDBNull(ordinals.DefaultUserName))
     {
         DefaultUserName = reader.GetString(ordinals.DefaultUserName);
     }
     if (!reader.IsDBNull(ordinals.AirlineTypeRcd))
     {
         AirlineTypeRcd = reader.GetString(ordinals.AirlineTypeRcd);
     }
     if (!reader.IsDBNull(ordinals.AddressOne))
     {
         AddressOne = reader.GetString(ordinals.AddressOne);
     }
     if (!reader.IsDBNull(ordinals.AddressTwo))
     {
         AddressTwo = reader.GetString(ordinals.AddressTwo);
     }
     if (!reader.IsDBNull(ordinals.AddressThree))
     {
         AddressThree = reader.GetString(ordinals.AddressThree);
     }
     if (!reader.IsDBNull(ordinals.City))
     {
         City = reader.GetString(ordinals.City);
     }
     if (!reader.IsDBNull(ordinals.Street))
     {
         Street = reader.GetString(ordinals.Street);
     }
     if (!reader.IsDBNull(ordinals.State))
     {
         State = reader.GetString(ordinals.State);
     }
     if (!reader.IsDBNull(ordinals.District))
     {
         District = reader.GetString(ordinals.District);
     }
     if (!reader.IsDBNull(ordinals.Province))
     {
         Province = reader.GetString(ordinals.Province);
     }
     if (!reader.IsDBNull(ordinals.ZipCode))
     {
         ZipCode = reader.GetString(ordinals.ZipCode);
     }
     if (!reader.IsDBNull(ordinals.PoBox))
     {
         PoBox = reader.GetString(ordinals.PoBox);
     }
     if (!reader.IsDBNull(ordinals.Comment))
     {
         Comment = reader.GetString(ordinals.Comment);
     }
     if (!reader.IsDBNull(ordinals.AddressId))
     {
         AddressId = reader.GetGuid(ordinals.AddressId);
     }
     if (!reader.IsDBNull(ordinals.ProductId))
     {
         ProductId = reader.GetGuid(ordinals.ProductId);
     }
     if (!reader.IsDBNull(ordinals.StockMarketSymbol))
     {
         StockMarketSymbol = reader.GetString(ordinals.StockMarketSymbol);
     }
     if (!reader.IsDBNull(ordinals.AircraftCount))
     {
         AircraftCount = reader.GetInt32(ordinals.AircraftCount);
     }
     if (!reader.IsDBNull(ordinals.UserId))
     {
         UserId = reader.GetGuid(ordinals.UserId);
     }
     if (!reader.IsDBNull(ordinals.DateTime))
     {
         DateTime = reader.GetDateTime(ordinals.DateTime);
     }
     if (!reader.IsDBNull(ordinals.AirlineId))
     {
         AirlineId = reader.GetGuid(ordinals.AirlineId);
     }
 }