refer this example
DataTable dt1 = new DataTable();
dt1.Columns.Add("ColumnName");
dt1.Rows.Add("aa.pdf");
dt1.Rows.Add("bb.txt");
DataTable dt2 = new DataTable();
dt2.Columns.Add("ColumnName");
dt2.Rows.Add("aa.pdf");
dt2.Rows.Add("bb.txt");
DataTable dt3 = new DataTable();
dt3.Columns.Add("ColumnName");
dt3.Rows.Add("aa.pdf");
dt3.Rows.Add("bb.txt");
if (dt1.Rows.Count == dt2.Rows.Count && dt2.Rows.Count == dt3.Rows.Count) {
string[] dt1Names = dt1.Rows.OfType<DataRow>().Select(row => System.IO.Path.GetFileNameWithoutExtension(row["ColumnName"].ToString()).ToLower()).ToArray();
string[] dt2Names = dt2.Rows.OfType<DataRow>().Select(row => System.IO.Path.GetFileNameWithoutExtension(row["ColumnName"].ToString()).ToLower()).ToArray();
string[] dt3Names = dt3.Rows.OfType<DataRow>().Select(row => System.IO.Path.GetFileNameWithoutExtension(row["ColumnName"].ToString()).ToLower()).ToArray();
if (dt1Names.Intersect(dt2Names).Count() == dt1.Rows.Count && dt1.Rows.Count == dt2Names.Intersect(dt3Names).Count())
{
}
else {
}
}
it can be done in many ways, this is one of them
refer
LINQ Except, Intersect and Union Method/ Operator in C#[
^]
Path.GetFileNameWithoutExtension Method (String) (System.IO)[
^]