Connector/wiring is always in play, and becomes more likely if the code comes back immediately. Topping off after the gas pump clicks off during fill-ups can send gas into the canister and produce evap codes. Bad gas cap is possible, but not too likely. And I also recall someone posting they needed to disconnect the battery for some period of time, in order to clear the ECM for one of the evap codes. If none of those help, you could try returning the purge solenoid to see if a replacement does any better.