• Как собрать запрос из частей?

    @StrataRozumu
    .NET C# Developer
    Создаешь свой класс, который и генерирует запрос по аналогии с паттерном Builder.
    И на каждом этапе передаешь предыдущий сформированный IQueriable при необходимости.

    class QueryBuilder
        {
            private IQueryable m_IQueryable;
    
            //Создаем запрос в конструкторе
            public QueryBuilder()
            {
                m_IQueryable = (from i in table select i);
            }
            
            //Добавляем условия
            public void AddDate(DateTime timestamp)
            {
                m_IQueryable = m_IQueryable.Where(x => x.Timestamp == timestamp);
            }
    
            //Возвращает сформированый запрос
            public IQueryable GetQuery()
            {
                return m_IQueryable;
            }
        }
    Ответ написан
    Комментировать