using System; using System.Collections.Generic; using System.Data; using System.Linq; public class Program { public static void Main() { List<QueueItem> queueItems = new List<QueueItem>() { new QueueItem("test1"), new QueueItem("test2") }; var dataTableColumnName = "MainColumn"; var dataTableToCompare = new DataTable(); var dc = new DataColumn(dataTableColumnName); dataTableToCompare.Columns.Add(dc); DataRow dr = dataTableToCompare.NewRow(); dr[dataTableColumnName] = "test1"; dataTableToCompare.Rows.Add(dr); dr = dataTableToCompare.NewRow(); dr[dataTableColumnName] = "test3"; dataTableToCompare.Rows.Add(dr); dr = dataTableToCompare.NewRow(); dr[dataTableColumnName] = "test4"; dataTableToCompare.Rows.Add(dr); var queueNames = queueItems.Select(s => String.Concat("'",s.QueueName,"'")).ToList(); DataRow[] filtered = dataTableToCompare.Select(String.Format("{0} NOT IN ({1}) ",dataTableColumnName,String.Join(",", queueNames))); foreach(DataRow r in filtered) { Console.WriteLine(r[dataTableColumnName].ToString()); } } } public class QueueItem{ public string QueueName{get;set;} public QueueItem(string queueName){ QueueName = queueName; } }
Preview:
downloadDownload PNG
downloadDownload JPEG
downloadDownload SVG
Tip: You can change the style, width & colours of the snippet with the inspect tool before clicking Download!
Click to optimize width for Twitter