reducing string compare overhead

I'm not at my development computer yet so I can't test.  I wonder what the point of the Cast is, though.  partModule.Fields is *already* defined to be a list of BaseFields.