My guess is this: at this part...
foreach (var leader in q)
{
...
}
... you are enumerating the query, so that makes the query (q) gets executed. So you are executing the query before setting a valid DataAccessAdapter instance to it. So your code should look like:
protected void PopulateTeamLeaders()
{
var q = from c in MetaSingletons.MetaData.VwProjectCollection select c.TeamLeaderName;
using (DataAccessAdapter adapter = clsDatabaseMethods.GetNewAdapter())
{
((LLBLGenProProvider2)((IQueryable)q).Provider).AdapterToUse = adapter;
}
foreach (var leader in q)
{
RadTreeNode leaderNode = new RadTreeNode(leader.ToString());
treProjects.Nodes.Add(leaderNode);
}
}