Jak przekonwertować wyrażenie lambda na sql?

Zajmuję się tworzeniem małych ram dostępu do bazy danych. Chcę dodać funkcję, która tworzy zapytanie za pomocą wyrażenia lambda. Jak mam to zrobic?

public class TestModel
{
    public int Id {get;set;}
    public string Name {get;set;}
}

public class Repository<T>
{
    // do something.
}

Na przykład:

var repo = new Repository<TestModel>();

var query = repo.AsQueryable().Where(x => x.Name == "test"); 
// This query must be like this:
// SELECT * FROM testmodel WHERE name = 'test'

var list = query.ToDataSet();
// When I call ToDataSet(), it will get the dataset after running the made query.

questionAnswers(3)

yourAnswerToTheQuestion