A dynamic class defines an object that can be altered at run time by adding or changing properties and methods. This extremely powerful mechanism
should be used very carefully, and only in very limited use cases.
Indeed, by definition dynamic classes make refactoring difficult and prevent the compiler from raising potential errors at compile time.
Noncompliant code example
dynamic public class DynamicFoo
{...}
Compliant solution
public class Foo //Note that the class has been renamed to avoid confusion
{...}