Using FluentValidation with Castle Windsor and Entity Framework 4.0 (POCO) in MVC2
Posted
by Brian McCord
on Stack Overflow
See other posts from Stack Overflow
or by Brian McCord
Published on 2010-05-20T21:50:16Z
Indexed on
2010/05/20
21:50 UTC
Read the original article
Hit count: 759
This isn't a very simple question, but hopefully someone has run across it.
I am trying to get the following things working together:
- MVC2
- FluentValidation
- Entity Framework 4.0 (POCO)
- Castle Windsor
I've pretty much gotten everything working. I have Castle Windsor implemented and working with the Controllers being served up by the WindsorControllerFactory that is part of MVCContrib. I also have Castle serving up the FluentValidation validators as is described by this article: http://www.jeremyskinner.co.uk/2010/02/22/using-fluentvalidation-with-an-ioc-container/
My problem comes in when I try to use Html.EditorForModel or EditorFor on a view. When I try to do that I get this error message:
No component for supporting the service FluentValidation.IValidator`1[[System.Data.Entity.DynamicProxies.State_71C51A42554BA6C3CF05105DA05435AD209602C217FC4C34CA52ACEA2B06B99B, EntityFrameworkDynamicProxies-BrindleyInsurance.BusinessObjects, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null]] was found
This is due to using the POCO generation on Entity Framework 4.0. At runtime, the generated classes get wrapped with a Dynamic Proxy so tracking and lazy loading can happen. Apparently, when using EditorForModel or EditorFor, it tries to ask Windsor to create a validator for the dynamic proxy type instead of the underlying real type.
Does anyone know what I can do to solve this issue?
© Stack Overflow or respective owner