One possible reason for the problem is the client picking up the wrong dll. (if it has the same name). I've been caught by this a few times when testing programs in different locations.

The client picks up the old version and does not see your new classes.

Charles