Sobes.tech

public bool BookTour(string userId, DateTime start, DateTime end, int hotelId, string roomType, string flightClass, int airCompanyId, int flightnumber) { try { //flightClass теже enum-ға парсинг жасағысы келмейді var flightInfo = new FlightInfo(Enum.Parse<FlightClass>(flightClass), airCompanyId, flightnumber); var resultBookFlight = _airWaysService.Book(GetUser(userId), flightInfo); //roomType теже enum-ға парсинг жасағысы келмейді var rentInfo = new RentInfo(start, end, hotelId, Enum.Parse<RoomType>(roomType)); //GetUserId бөлек айнымалыға var resultBookHotel = _hotelService.Book(GetUser(userId), rentInfo); //Exception ішкі әдіске кетеді, ұстамайды Task.WhenAll(resultBookFlight, resultBookHotel); //Неге статикалық reservationIdAir = resultBookFlight.Result; _reservationIdHotel = resultBookHotel.Result; } catch (BookFlightException) { _hotelService.CancelBook(_reservationIdAir); return false; } catch (BookHotelException) { _airWaysService.CancelBook(_reservationIdHotel); return false; } catch (Exception ex) { throw new ApplicationException(ex.Message); } finally { //өрістер 100% инициализацияланбаған //Неге exception болған соң бір нәрсе сақтауға тырысамыз // GetUser бұрын шығарылды unitOfWork.Execute(async () => { await _tourRepository.Save(_reservationIdAir, _reservationIdHotel, GetUser(userId)); }).RunSynchronously(); //Interlock.Increment() _countBooked++; } return true; }

Middle
OZONOZON
57

Ұсыныстарды қандай қаржылық диапазонда қарастырып отырсыз?

Middle
Ventra
57

Әріптесіңіздің тапсырмасы Code Review-ға түсті Кодта қандай мәселелер көресіз?

Middle+
СБК ПАРУС
57

Асинхрондылық дегеніміз не және оның мәні неде? Ол қалай жүзеге асырылады?

Middle
PyrusPyrus
57

Монолит пен микросервистерді салыстырыңыз — әрқайсысының артықшылықтары мен кемшіліктері.

Middle+
aiins
57

async/await деген не, ол не үшін қажет және ол қалай жүзеге асады?

Middle
OZONOZON
57

Бұл SQL сұрауын барынша қалай оңтайлануға болады?

Middle
PyrusPyrus
57

БД құрылымы бірдей, бірақ деректері әртүрлі екі клиенттің орындау жоспары бірдей бола ма?

Middle
PyrusPyrus
57

Осы сұраудың есептеу күрделілігі қандай? Оны бір өту арқылы сұрыптауға бола ма?

Middle
PyrusPyrus
57

Сілтеме және мән типтері арасындағы айырмашылықты түсіндіріңіз.

Middle
OZONOZON
57

LINQ қолдандың ба? Материализация деген не?

Middle+
Gravilink
57

RabbitMQ мен Kafka арасындағы айырмашылық неде?

Middle+
СБК ПАРУС
57

IEnumerable әдістерінің қысқаша салыстырмасы: SingleOrDefault және FirstOrDefault — айырмашылығы неде?

Junior
СБК ПАРУС
56

Неге lock ішінде async код жазуға болмайды?

Junior
СБК ПАРУС
56

Миллиондаған жазбалары бар кестеде баяу SQL сұрауын қалай оңтайландырар едіңіз?

Middle+
СБК ПАРУС
56

Қашан орындалу await-қа жетсе, не болады? Компилятор оны қалай өңдейді?

Middle+
Тензор
56

Жақында жасаған қызықты тапсырмаңыз туралы айта аласыз ба (складтағы роботтарды басқару сервисінің архитектурасы сипаттамасы)?

Middle+
PyrusPyrus
56

gRPC арқылы қызметтер арасындағы коммуникация мен дәстүрлі HTTP өзара әрекеттесуін салыстыра аласыз ба? Әр тәсілдің артықшылықтары мен кемшіліктері.

Middle+
ООО Норд Клан
56

Транзакциялар түрлері / оқшаулау деңгейлері?

Middle+
Gravilink
56

Struct дегеніміз не және ол class-тан қалай ерекшеленеді?

Middle+
Gravilink
56
/180