We contribute to the study of efficient enumeration algorithms for all solutions of constraint satisfaction problems. The only algorithm known so far, presented by Creignou and H\'ebrard and generalized by Cohen, reduces the enumeration problem for a constraint language $\Gamma$ to the decision problem for a slightly enlarged constraint language $\Gamma^+,$ i.e., it yields an efficient enumeration algorithm for the case where $\mathrm{CSP}(\Gamma^+)$ is tractable. We develop a new class of algorithms, yielding efficient enumeration algorithms for a broad class of constraint languages. For the three-element domain, we achieve a first step towards a dichotomy theorem for the enumeration problem.