Linq to Sql – Set connection string dynamically based on environment variable

I need to set my connection string for Linq to Sql based on an environment variable. I have a function which will return the connection string from the web.config based on the environment variable, but how do I get Linq to always use this “dynamically created” connection string (preferably without having to specify it every time)?

Duplicate Rows when Data Binding with LINQ to Entities

I have problems binding both a telerik RadGrid and a plain vanilla ASP.NET GridView to the results of the following LINQ to entities query. In both cases the grids contain the correct number of rows, but the data from only the first handful of rows is duplicated in all the other rows. I’m directly assigning the return value from this code the the DataSource property on the grids.