You could try another option which would be to allow students one attempt on the in class exam but then allow multiple attempts for reduced credit for say 24 hours after the exam. You could extend the due date 24 hours and set up reduced scoring for that period.
This would be very similar to the way I used WeBWorK way back in the fall of 1996. I taught a small class (the first class WeBWorK was ever used in) and instead of giving partial credit on exams, I used WeBWork for partial credit. The exams were standard paper exams but at the end I told the students the correct answers and gave them 24 hours to do whatever problems they missed on WeBWorK. The WeBWorK problems were the same as the exam problems except for constants. If they got the WeBWorK problem correct, the student was given 25% of whatever they missed on that problem. The average exam score went up from around 70 to 75 or so. Not a big difference but most students put a big effort into this. About 20% didn't bother, 60% did all the problems they missed on the exam and 20% did all the problems (even thought they didn't get any extra credit for the ones they got correct on the exam). They liked it and I liked it. I never tried this in a large class because to do it you would have to record and enter student exam scores on individual problems (which is too onerous for the professor) or require students to do the whole exam on WeBWorK (which is too onerous for the student). But in your case where you are already using WeBWorK for the exam, the process is almost automatic. If you wanted you could set thing up initially with reduced credit and then all you would have to do is, after the exam finishes, switch from allowing one attempt to allowing as many as you want.