Consulta

Pessoal se alguem puder me ajudar agradeço, não consigo fazer essa query, olha o que tenho.

        SimpleExpression codigoVendedorExtra = Expression.Eq("CodigoVendedorExtra", busca);
        SimpleExpression Nome = Expression.Like("NomeCliente", busca);
        SimpleExpression CNPJ = Expression.Like("CnpjCpf", busca);
        SimpleExpression Codigo = Expression.Eq("CodCliente", busca);

     



        ICriterion[] criterio = new ICriterion[] { Expression.And(codigoVendedorExtra, Nome),Expression.Or(CNPJ, Codigo)  };

com isso ele me retorna isso no sql

SELECT THIS_.COD_CLI AS COD1_0_0_, THIS_.NOM_CLI AS NOM2_0_0_, THIS_.CNPJ_CPF AS CNPJ3_0_0_, THIS_.COD_VEN AS COD4_0_0_, THIS_.COD_VEN_EXT AS COD5_0_0_, THIS_.CRED_DISP AS CRED6_0_0_, THIS_.QT_PONTUACAO AS QT7_0_0_ FROM V_REEL_CLIENTE THIS_ WHERE (THIS_.COD_VEN_EXT = :P0 OR THIS_.NOM_CLI LIKE :P1) AND (THIS_.CNPJ_CPF LIKE :P2 OR THIS_.COD_CLI = :P3)

eu nao consigo retirar o ultimo AND >> AND (THIS_.CNPJ_CPF LIKE :P2 OR THIS_.COD_CLI = :P3) e trocar por OR. Ja tentei e nao consigo