Как сравнить строки в excel с строками в таблице mysql и потом удалить те строки в Excel, которые уже есть в базе данных

Пытаюсь сделать следующую систему:

  1. Получаем путь к файлу Excel (с помощью "открыть файл, через программу") — сделано
  2. Проверить в этом файле Excel строки на схожесть с строками в базе данных MySQL — не сделано
  3. Вывести в таблицу DataGridView строки, которых нет в базе данных и загрузить их в базу данных — не сделано
  4. Если строки будут одинаковы (в таблице и в mysql базе), тогда удаляем эти строки из таблицы excel.
    На данный момент я переделал код из спагетти, на более красивый и разбил по классам.
    Проблема реализации в том, что я с таким еще не сталкивался, научился только открывать Excel в DataGridView, но такая реализация не позволит сравнивать строки Excel со строками в базе данных.
    Даже примерно не представляю как такое сотворить, буду благодарен за любую инфорамацию.

Мой код:

// FileReader.cs
using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using Microsoft.Office.Interop.Excel;

namespace minusator_release
{
    class FileReader
    {
        string filePath = string.Empty;
        string fileExt = string.Empty;

        public string OpenFile()
        {
            using (OpenFileDialog file = new OpenFileDialog()
            { Filter = "Excel Workbook|*.xlsx" +
            "|Excel 97-2003 Workbook|*.xls", Multiselect=false })
            {

                if (file.ShowDialog() == System.Windows.Forms.DialogResult.OK)
                {
                    filePath = file.FileName;   // get the pass of the file
                    fileExt = Path.GetExtension(filePath); // get the file extension
                    try
                    {
                        Excel excel = new Excel(filePath, 1);
                        
                        MessageBox.Show(excel.ReadCell(1, 1));
                    }
                    catch (Exception ex)
                    {
                        MessageBox.Show(ex.Message.ToString());
                    }

                }
            }
            return filePath;
        }


        public string _getFilePath()
        {
            string fpath = filePath;
            return fpath.ToString();
        }

    }
}
// excel .cs
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Microsoft.Office.Interop.Excel;
using _Excel = Microsoft.Office.Interop.Excel;

namespace minusator_release
{
    class Excel
    {
        string path = string.Empty;
        _Application excel = new _Excel.Application();
        Workbook wb;
        Worksheet ws;
        public Excel(string path, int Sheet)
        {
            this.path = path;
            excel = new _Excel.Application();
            excel.ScreenUpdating = false;
            wb = excel.Workbooks.Open(path);
            ws = wb.Worksheets[Sheet];
        }
        public string ReadCell(int i, int j)
        {
            i++;
            j++;
            if (ws.Cells[i, j].Value2 != null)
                return ws.Cells[i, j].Value2;
            else
                return "";
        }
    }


}
form1.cs
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace minusator_release
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
            lblMinusatorOnDisplay.Text = "Здесь будет показана таблица Excel до операции \"Проминусовать\"";
        }


        // load table
        private void btnTableLoad_Click(object sender, EventArgs e)
        {
            FileReader fr = new FileReader();
            string path = fr.OpenFile();
            
        }
    }
}


Ответы (0 шт):