I'm not a pro, so keep that in mind.
For easy to find in Canada, I use Tremclad Red Oxide (oil based) primer. I figure if red oxide is good enough for structural steel.....
Tremclad is an old Canadian label, but I think it is now owned by Rustoleum.
A trick I learned from a bodyman was to use fiberglass resin on problematic seams or weld areas. He'd clean up the area really well, then selectively use the resin to seal these problem areas. The resin will block water from migrating back into the problem spots.
I'm trying a variation of that approach with the steel wheels I just refinished on my trailer. I primed with Tremclad Red Oxide after sandblasting, painted with wheel paint (colour coats, then 2 clear coats). Once it was all dry (next day), I ran a bead of clear silicon around the seam between the inner section and the outer wheel rim, both front side and back. I'll see how this silicon approach stands up over time, as the seams are usually where rust re-starts from.
Rgds, D.