/// <summary> /// Search hospitals in database using Advanced option /// </summary> /// <param name="cityId">City ID</param> /// <param name="districtId">District ID</param> /// <param name="specialityId">Speciality ID</param> /// <param name="diseaseName">Disease name</param> /// <returns>List[HospitalEntity] that contains a list of Hospitals</returns> public async Task <List <HospitalEntity> > AdvancedSearchHospital(int cityId, int districtId, int specialityId, string diseaseName) { List <HospitalEntity> hospitalList = null; // Search for suitable hospitals in database using (LinqDBDataContext data = new LinqDBDataContext()) { hospitalList = await Task.Run(() => (from h in data.SP_ADVANCED_SEARCH_HOSPITAL(cityId, districtId, specialityId, diseaseName) select new HospitalEntity() { Hospital_ID = h.Hospital_ID, Hospital_Name = h.Hospital_Name, Address = h.Address, Ward_ID = h.Ward_ID, District_ID = h.District_ID, City_ID = h.City_ID, Phone_Number = h.Phone_Number, Coordinate = h.Coordinate, Is_Active = h.Is_Active, Rating = h.Rating }).ToList()); } // Return list of hospitals return(hospitalList); }