public async Task <IActionResult> Create(AutoPost post) { Model?model = null; Make? make = null; if (post.ModelId.HasValue) { model = await _autoPostService.GetModel(post.ModelId.Value); } if (post.MakeId.HasValue) { make = await _autoPostService.GetMake(post.MakeId.Value); } post.SystemTitle = AutoPostService.GenerateTitle(post); return(await base.Create(post)); }
private async Task CreateTestData(IServiceScope scope) { IAutoPostService autoService = scope.ServiceProvider.GetRequiredService <IAutoPostService>(); IPostService postService = scope.ServiceProvider.GetRequiredService <IPostService>(); MyDbContext myDbContext = scope.ServiceProvider.GetRequiredService <MyDbContext>(); HashSet <string> existingVins = myDbContext.AutoPosts.Where(x => !string.IsNullOrEmpty(x.Vin)).Select(x => x.Vin !).AsNoTracking().ToHashSet(); List <string> vins = new List <string> { "YV149MTS6G2409804", "JTJYWRBZ6G2009198", "SALWG2VF5GA642581", "YV126MEB3F1186381", "YV1902TH6F2304610", "JA4JZ4AX9FZ001840", "WMWZP3C56FT298666", "KNAFZ4A81F5290432", "WA1CMCFE3FD080332", "3VW2M1AJ5EM308034", "WMWSX1C50ET623235", "WDDHH8JB5EA799727", "JTHBE5D25E5999999", "JTHBE5D21E5009987", "WAUWFBFL0E0015575", "JM3TB3BV1D0402771", "JM1BL1UF2D1843458", "JTHCF5C2XD2036051", "1C4BJWKGXDL508578", "WBA3A5C5XDF255852", "WAUBGCFC1DN070779", "3VWFP7AT0CM615492", "JM1BL1V74C1654199", "SALSF2D48CA745019", "5UXWX5C51CC727594", "WBSDX9C50CE632859", "WBAKC8C57CCC34760", "WAUFEAFMXCA868546", "JN8AS5MT9BW568025", "JN1AR5EF2BM240198", "JA32Y6HV1BU003147", "JTHFF2C26B2515141", "1J4N72GU9BD117409", "SAJWA2GEXBMV00832", "1GC4CZC80BF120492", "WBSKG9C57BE369243", "YV4852CZ0A1550673", "3N1AB6AP4A1705397", "WMWMS3C45ATY08384", "WDDGF5EB5AR097221", "5NMSK3BB0A0011955", "KMHCN4BC5AU476036", "19XFA1E39AE028694", "1FTPX1EV0A0017433", "1G1YR2DW4A50008EX", "WB1024400AZR12312", "KL2TX56E49B323948", "JA3AY68V09U612302", "2LMDU68L29BJ11359", "KMHGC46E394061991", "KL1TJ53779B616366", "WBXPC934X9WJ30129", "WUADA64F19N900439", "5J8TB18219A802665", "2G2WP552681193952", "KL2TJ51608B202365", "KMHEU41DX8A516824", "1Z7HT38K87S100173", "KMHJM12B070013219", "1ZVFT80N475211367", "1FTPX14587KA80202", "1FDSE35S57DB34927", "3D2WS26D07G777824", "3D6WS26D67G828192", "WB10397017ZP61849", "2HNYD28377H522352", "WVWCU93C86P085276", "KL2TD69656B612870", "WMWRF33456TG14703", "WDBTK56F36T072574", "1LNFM83V060018247", "SALMH13446A220123", "KNALD221565103572", "2HKYF286060012701", "1HGCM56766A041742", "WBAVD13596KX00407", "6G2VX12U95L553833", "WMWRC33444T050912", "1J4GL48K246250341", "1HD1BMY1X4Y010673", "JH4CL96974CD14071", "5GZCZ23D13S847842", "KNDUP131936358464", "KNDUP131336425950", "1HD1JAB313Y039358", "4F4YR12U72TM08759", "JHLRD78512C024509", "1HD1PDC392Y952267", "2B4GT54L62R753223", "JF1SF63501H759113", "SALTY12471A702896", "1FAFP40491FS62183", "YV1VW255XYFU88185", "WBAEJ1341YA382128", "2HHMB4660YH904692", "1LNFM81W7XY601946", "1GCGC33R3XF100201", "JT8BF28G1W5630798", "JH4KA9653WC800195", "WDBGA51E4TA328716", "1LNLM82W9TY705110", "KNDJA723XT5517217", "2GCEK19R3T1146294", "WBABK7320TET60222", "JA3AP47H3SY018398", "SALHF1349SA654345", "JH4DC4340SS001220", "4T1SK12E7PU300490", "JM2UF2138N0251579", "1B7FG23Y0N0012403", "1HGEE4860L0017233", "1HD4CAM33LY118860", "1FTEF25M0L0016339", "3VWBB91G0K0016657", "JT2MX83E2K0030681", "2G3AM51NXK2312943", "2G3AM51N0K2395928", "WDBEA26E6KB002021", "1LNCM9744KY646690", "1FTCR10T4KUC34284", "1FTCR10A9KUC55386", "2G3AM513XJ2364151", "1G3AJ513xJG314327", "1LNBM9741JY839714", "1FTCR14T6JPB25476", "1FTBR10A7JUD45386", "JB3BA24K0JU001772", "WVWCA0157HK036627", "JT2EL31D8H0101727", "2G3AJ51W1H9422815", "1G3AJ5131HD398220", "JN1HU1110HT263333", "1JTBG64S0H0014395", "1FTBR10C3HUB08213", "JH4KA2640HC004148", "1G3AM19X8GG308517", "1G3AJ19X1GG341898", "1G3AJ19W6GG420717", "1N6HD16Y1GC442608", "2B4FK51G8GR605541", "1G3AJ19E0FG390717", "1G3AM19E8FG344687", "1JCBS7440F0013895", "1FACP22X2FK213033", "1FMEU15HXFLA29734", "1G3AM19E4ED315574", "1G3AJ19E7EG320727", "JN1HK04S0E0010739", "WDBDA24A4EA027134", "WDBD022A7EA060323", "1FABP0521ET102126", "1JCNE16N6CT044957", "1HD1AJK23CY024920", "WVWDG21K9BW201730", "WDBAA33A8BB093914", }; Model model = myDbContext.Models.Include(x => x.Make).FirstOrDefault(); int? makeId = model.MakeId; foreach (string vin in vins) { if (existingVins.Contains(vin)) { continue; } AutoPost autoPost = await autoService.CreatePostFromVin(vin); DateTime now = DateTime.UtcNow; autoPost.AutoCondition ??= (AutoCondition)GetRandomEnumValue(typeof(AutoCondition)) !; autoPost.AutoType ??= (AutoType)GetRandomEnumValue(typeof(AutoType)) !; autoPost.Doors ??= 4; autoPost.DriveType ??= (DriveType)GetRandomEnumValue(typeof(DriveType)) !; autoPost.FuelType ??= (FuelType)GetRandomEnumValue(typeof(FuelType)) !; autoPost.IsPublic = true; autoPost.Make ??= model.Make; autoPost.MakeId ??= makeId; autoPost.Model ??= model; autoPost.ModelId ??= model.ModelId; autoPost.ModifiedDate = now; autoPost.CreatedDate = now; autoPost.Color ??= "Black"; autoPost.CreatedByUserId = 1; autoPost.TitleStatus ??= (TitleStatus)GetRandomEnumValue(typeof(TitleStatus)) !; autoPost.TransmissionType ??= (TransmissionType)GetRandomEnumValue(typeof(TransmissionType)) !; autoPost.Description = "Test"; autoPost.Price = 10; autoPost.SystemTitle ??= AutoPostService.GenerateTitle(autoPost); autoPost.UserTitle = autoPost.SystemTitle; autoPost.Language = "English"; autoPost.IsPublic = true; autoPost.Mileage = 10000; await postService.Create(autoPost); } }