/*Följande metod raderar en cykel ur "generella" cykeltabellen SAMT den korrekta subtabellen m.h.a. ramnummret * som kommer ifrån en användare.*/ public void RemoveBicycleFromDatabase(string frame_number) { using (var context = new bicycle_rental2DBEntities()) { Bicycle removeBicycle = context.Bicycles.FirstOrDefault(c => c.frame_number == frame_number); context.Bicycles.Remove(removeBicycle); if (removeBicycle.bicycle_type == "Vanlig cykel") { Regular_bicycle removeRegular = context.Regular_bicycle.FirstOrDefault(b => b.frame_number == frame_number); context.Regular_bicycle.Remove(removeRegular); context.SaveChanges(); } else if (removeBicycle.bicycle_type == "Elcykel") { Electric_bicycle removeElectric = context.Electric_bicycle.FirstOrDefault(b => b.frame_number == frame_number); context.Electric_bicycle.Remove(removeElectric); context.SaveChanges(); } else if (removeBicycle.bicycle_type == "Enhjuling") { Unicycle removeUnicycle = context.Unicycles.FirstOrDefault(b => b.frame_number == frame_number); context.Unicycles.Remove(removeUnicycle); context.SaveChanges(); } } }
/*Följande metod tar emot ett ramnummer som användaren har fyllt i m.h.a. en annan metod, söker upp matchande cykel i * den "generella" cykeltabellen för att sedan presentera ALL data på just den cykeln. * * Denna metoden borde nog egentligen inte ha printat informationen, utan bara hämtat objekt/objektinformationen och * skickat vidare den till en mer relevant metod. Åtgärdas i mån av tid. TODO.*/ public void DisplaySpecificBicycle(string frame_number) { Console.Clear(); using (var context = new bicycle_rental2DBEntities()) { Bicycle bicycle = context.Bicycles.FirstOrDefault(b => b.frame_number == frame_number); Console.WriteLine("DISPLAYING BICYCLE: " + bicycle.make + " " + bicycle.model); Console.WriteLine("\n\nBicycle type: " + bicycle.bicycle_type); Console.WriteLine("Bicycle category: " + bicycle.bicycle_category); Console.WriteLine("Recommended user: "******"Color: " + bicycle.color); Console.WriteLine("Frame size: " + bicycle.frame_size); Console.WriteLine("Wheel size: " + bicycle.wheel_size); Console.WriteLine("Gears: " + bicycle.gears); Console.WriteLine("Brakes back: " + bicycle.brake_back); Console.WriteLine("Brakes front: " + bicycle.brake_front); Console.WriteLine("Price: " + bicycle.price); /*Hämtar extra information om cykeln som visas är en elcykel. Info hämtas m.h.a. ramnummer och finnes i * subtabellen över elcyklar.*/ if (bicycle.bicycle_type == "Elcykel") { Console.WriteLine("\nBATTERY INFORMATION:"); Electric_bicycle displayElectric = context.Electric_bicycle.FirstOrDefault(b => b.frame_number == frame_number); Console.WriteLine("\nBattery capacity: " + displayElectric.battery_capacity + " Wh."); Console.WriteLine("Average charge time: " + displayElectric.battery_avg_charge_time + " hours."); Console.WriteLine("Average distance per full charge: " + displayElectric.battery_avg_distance + " km."); Console.WriteLine("Motor power: " + displayElectric.motor_power + " W."); } Console.WriteLine("\n\n\n\nPress a key to return to the main menu."); Console.ReadKey(); } }