Como incluir uma expressão And () que verifica uma propriedade e seu valor

Gostaria de adicionar uma verificação em nosso repositório que filtra todos os objetos em um companyId, se ele estiver lá e se corresponder a um determinado valor.

Então, onde temos:

public T First<T>(Expression<Func<T, bool>> expression) where T : EntityObject  
{  
   var set = GetObjectSet<T>();  
   return set.FirstOrDefault<T>();  
}  

Gostaria de adicionar uma linha que parece algo em que ...

express.And("Check for CompanyId property if it exists then make sure it = 3");  

Alguma idéia de como fazer isso?
Obrigado :)

questionAnswers(3)

yourAnswerToTheQuestion