add db connection pool
//Initialize the Pool
DBConnectionSingletion pool = DBConnectionSingletion.Instance;

//Borrow the SqlConnection object from the pool
SqlConnection conn = pool.BorrowDBConnection();

DataContext dc = new DataContext(conn);
Table<User> tu = dc.GetTable<User>();
var query = from u in tu
            where u.Id < 100
            select u;
foreach (var u in query)
{
    Console.WriteLine("{0} {1}\n", u.Id, u.Name);
}

//Return the Connection to the pool after
//using it
pool.ReturnDBConnection(conn);
add db connection pool interface in main project
new interface for db connection pool
usage:
//Borrow the SqlConnection object from the pool
DataContext dc = DBConnectionSingletion.Instance.BorrowDBConnection();

Table<User> tu = dc.GetTable<User>();
var query = from u in tu
            where u.Id < 100
            select u;
foreach (var u in query)
{
    Console.WriteLine("{0} {1}\n", u.Id, u.Name);
}

//Return the Connection to the pool after using it
DBConnectionSingletion.Instance.ReturnDBConnection(dc);
clean test project