Step 1: Used Namespaces:
using 
System;
using 
System.Collections.Generic;
using 
System.Linq;
using 
System.Data;
Step 2: Create DataTable and add DataColumns to it
DataTable 
dtTable = new 
DataTable();
dtTable.Columns.Add(new
DataColumn("Company",
typeof(System.String)));
dtTable.Columns.Add(new
DataColumn("Product",
typeof(System.String)));
dtTable.Columns.Add(new
DataColumn("IsLive",
typeof(System.Boolean)));
Step 3: Add Rows to DataTable
DataRow 
dr = dtTable.NewRow();
dr["Company"] = 
"Microsoft";
dr["Product"] =
"VisualStudio";
dr["IsLive"] =
true; 
dtTable.Rows.Add(dr); 
dr = dtTable.NewRow();
dr["Company"] =
"Microsoft";
dr["Product"] = "Sql 
Server";
dr["IsLive"] =
true;
dtTable.Rows.Add(dr);
Step 4: Convert DataTable to Generic Dictionary<K,T> 
//Filter the required data from datatable.
Dictionary<String,
String> dic = (from 
order in dtTable.AsEnumerable()
where 
order.Field<Boolean>("IsLive") 
== true
select
new 
{
    //Get the specific Field from the datatable.
    
company = order.Field<String>("Company"),
    product = order.Field<String>("Product")
    }).AsEnumerable().ToDictionary(k => k.product, v => v.company);
Split Up of Above Snippet:
Step 1: Convert DataTable As Enumerable
from 
order in dtTable.AsEnumerable()
Step 2: Filter using the required column
where 
order.Field<Boolean>("IsLive") 
== true
Step 3: Selecting the require field and add it as Enumerable
select
new 
{
    
//Get the specific Field from the datatable.
    
company = order.Field<String>("Company"),
    product = order.Field<String>("Product")
    }).AsEnumerable()
Step 4: Convert Enumerable into Dictionary
.ToDictionary(k => k.product, v => v.company);
Thanks for reading this blog. Have a nice day.