ReadFileContent() public static method

Reads content from a file
public static ReadFileContent ( string filename, string foldername ) : Task
filename string the name of the file
foldername string the name of the folder containing the file
return Task
        /// <summary>
        /// Adds report to the stored report list
        /// </summary>
        /// <param name="report">the DriveReport to be added to the list</param>
        /// <returns>true on success, false on failure</returns>
        public static async Task <bool> AddReportToList(DriveReport report)
        {
            try
            {
                var content = await FileHandler.ReadFileContent(Definitions.ReportsFileName, Definitions.ReportsFolderName);

                var list = JsonConvert.DeserializeObject <List <DriveReport> >(content);
                if (list == null)
                {
                    list = new List <DriveReport>();
                }

                list.Add(report);

                var toBeWritten = JsonConvert.SerializeObject(list);

                var test = await FileHandler.WriteFileContent(Definitions.ReportsFileName, Definitions.ReportsFolderName, toBeWritten);

                if (test)
                {
                    Definitions.storedReportsCount = list.Count;
                }

                return(test);
            }
            catch (Exception e)
            {
                return(false);
            }
        }
        /// <summary>
        /// Gets the amount of stored reports
        /// </summary>
        /// <returns>integer representing the amount of stored reports</returns>
        public static async Task GetCount()
        {
            try
            {
                var content = await FileHandler.ReadFileContent(Definitions.ReportsFileName, Definitions.ReportsFolderName);

                var list = JsonConvert.DeserializeObject <List <DriveReport> >(content);

                Definitions.storedReportsCount = list.Count;
            }
            catch (Exception e)
            {
                Definitions.storedReportsCount = 0;
            }
        }
        /// <summary>
        /// Fetches the report list from the stored file
        /// </summary>
        /// <returns>returns the stored report list</returns>
        public static async Task <List <DriveReport> > GetReportList()
        {
            try
            {
                var content = await FileHandler.ReadFileContent(Definitions.ReportsFileName, Definitions.ReportsFolderName);

                var list = JsonConvert.DeserializeObject <List <DriveReport> >(content);
                if (list == null)
                {
                    list = new List <DriveReport>();
                }

                return(list);
            }
            catch (Exception e)
            {
                return(new List <DriveReport>());;
            }
        }
        /// <summary>
        /// Removes specific report from the stored list
        /// </summary>
        /// <param name="report">the DriveReport to be removed from the list</param>
        /// <returns>the DriveReport list after removal of the specific DriveReport</returns>
        public static async Task <List <DriveReport> > RemoveReportFromList(DriveReport report)
        {
            try
            {
                var content = await FileHandler.ReadFileContent(Definitions.ReportsFileName, Definitions.ReportsFolderName);

                var list = JsonConvert.DeserializeObject <List <DriveReport> >(content);

                var item = list.FindIndex(x => x.Date == report.Date && x.route.TotalDistance == report.route.TotalDistance);
                list.RemoveAt(item);

                var toBeWritten = JsonConvert.SerializeObject(list);

                await FileHandler.WriteFileContent(Definitions.ReportsFileName, Definitions.ReportsFolderName, toBeWritten);

                Definitions.storedReportsCount = list.Count;
                return(list);
            }
            catch (Exception e)
            {
                return(new List <DriveReport>());;
            }
        }