Jak zbudować dynamiczną klauzulę FROM dla zapytania LINQ?

Mam standardowe zapytanie LINQ:

var list = from x in SomeDataContext.ViewName
           where //Rest of where clause
           select x;

Chciałbym wiedzieć, czy możliwe jest zbudowanie dynamicznego zapytania LINQ, aby móc zmienićSomeDataContext.ViewName W czasie wykonywania.

Mam około 5 różnych widoków, wszystkie z podstawowymi kolumnami potrzebnymi do wykonania klauzuli where, ale z kilkoma różnymi nazwami kolumn dla każdego innego widoku.

Czy jest więc możliwe zbudowanie zapytania, aby w razie potrzeby móc użyć innego kontekstu w czasie wykonywania?

Przykład:

public void SomeMethod()
{
    var listA = GetList("DataContext.ViewA");
    var listB = GetList("DataContext.ViewB");
    var listC = GetList("DataContext.ViewC");
}

public List<EntityObject> GetList(string dataContextName)
{
    return (from x in /*HERE I WANT TO USE THE dataContextName*/
           where //Rest of where clause
           select x).ToList();
}

questionAnswers(2)

yourAnswerToTheQuestion