I'm using an Interface to define my object in my MVC Controller, and using a Dependency Injection framework to inject various different concrete implementations.
The validation for the object is using DataAnnotations, but here comes the problem.
Because I'm using an Interface for the model which gets injected in to the controller, the DataAnnotations have to be against the interface, which is wrong because each concrete implementation that is being injected has its own DataAnnotations validation rules.
How can I ensure that the injected models DataAnnotations are being used when perform validation?