public List <AISData> GetAISData(int mmsi, DateTime startTime, DateTime endTime, double latitudeMinDeg, double latitudeMaxDeg, double longitudeMinDeg, double longitudeMaxDeg)
        {
            using var db = new AISDataContext();

            var aisData = db.AISData.FilterByMMSI(mmsi).FilterByTime(startTime, endTime).FilterByLatitudeLongitude(latitudeMinDeg, latitudeMaxDeg, longitudeMinDeg, longitudeMaxDeg).OrderByTime().ToList();;

            return(aisData);
        }
        public List <AISData> GetAISData(int mmsi, DateTime startTime, DateTime endTime)
        {
            using var db = new AISDataContext();

            var aisData = db.AISData.FilterByMMSI(mmsi).FilterByTime(startTime, endTime).OrderByTime().ToList();;

            return(aisData);
        }
        public List <int> GetMMSIs(DateTime startTime, DateTime endTime, double latitudeMinDeg, double latitudeMaxDeg, double longitudeMinDeg, double longitudeMaxDeg)
        {
            using var db = new AISDataContext();

            var mmsis = db.AISData.FilterByTime(startTime, endTime).FilterByLatitudeLongitude(latitudeMinDeg, latitudeMaxDeg, longitudeMinDeg, longitudeMaxDeg).Select(s => s.MMSI).Distinct().OrderBy(s => s).ToList();

            return(mmsis);
        }
        public List <AISData> GetAISData(int mmsi)
        {
            using var db = new AISDataContext();

            var aisData = db.AISData.FilterByMMSI(mmsi).ToList();

            return(aisData);
        }
        public List <int> GetMMSIs(DateTime startTime, DateTime endTime)
        {
            using var db = new AISDataContext();

            var mmsis = db.AISData.FilterByTime(startTime, endTime).Select(s => s.MMSI).Distinct().OrderBy(s => s).ToList();

            return(mmsis);
        }