2012-03-26 1 views
0

Я играю с базовой реализацией объекта «Объект запроса» (в кавычках, поскольку это реализация шаблона интерпретатора), и я думал об улучшении которые я не знаю, как реализовать.Игра с объектным запросом «шаблон» в C# и деревьях выражений

Как вы знаете объект Criterion будет выглядеть следующим образом:

public class Criterion 
{ 
    ... 
    string FieldName { get; set; } 
    string Value { get; set; } 
    .... 
} 

Что мне не нравится тот факт, что я должен добавить поле строку, так что я думал, смогу ли я создать некоторые тип общего критерия Критерий, поэтому я мог бы использовать его так:

var criterion = new Criterion<Person>(); 
criterion.Field = c => c.FirstName; 
criterion.Value = "John"; 

или что-то в этом роде.

Конечно бы там также часть, где критерии должны быть преобразованы в SQL, так что я мог бы сделать что-то вроде:

string query = "SELECT * FROM Person WHERE " + criteria.Field.ToString() + " = '" + criteria.Value + "'" 

Я уверен, что там должен быть способ сделать это, но я просто не могу обернуть вокруг себя голову.

Благодарим за помощь.

+0

Возможный дубликат [Получить имя и тип метода, используя выражение лямбда] (http://stackoverflow.com/questions/273941/get-method-name-and-type-using-lambda- выражение) – nawfal

ответ

 Смежные вопросы

  • Нет связанных вопросов^_^