Living in the Tech Avalanche Generation

A practitioner’s introspective on technology
Archive for August 21st, 2008

Castle Active Record is too painful to setup (if your using Access)!

insights_sleep_on_computerI love Castle Windsor for IoC / DI but…..Active Record devotees might like to correct me here but as far as I can tell it just wont work for me. I have been attempting to get Active Record CR3 running with Microsoft Access 2007 and its no picnic, in fact it’s a library version mismatch nightmare. The fact that Castle, NHibernate and Log4Net are all utilised in the framework makes it susceptible to build mismatch problems and Active record does not come bundled with some required DLL’s which appear to be in the NHibernate Contrib version. In a nutshell I got tired of trying to find the right DLL versions to get the JetDriver & Dialect to work so I decided to use  NHibernate directly with Microsoft Access and for a small project I think is overkill. Hang on one second….NHibernate suffers the same problem and a Dialect for office 2007 isn’t yet available, so lets dump that idea. Next on the shopping list is DbEntry found on CodePlex and that turns out to be a less than satisfying experience so that option goes nowhere. I guess at this point there’s still IBatis.Net and Wilson OR Mapper but the hour is late and I am growing tired. If there was a LINQ provider for Access I would have jumped all over it. If someone can point me in the direction of a five minute fix I would love to hear about it and would gladly retract and recant. In the meantime I have decided to use SQL Express and LINQ To SQL with my custom hand rolled DDD approach which is POCO all the way. Now I can get on with my prototype DSL which is what started me down this path to begin with. If anyone is interested, I am building an internal DSL which will model a well known Document Management systems export schema and I am hoping to wire it up to designers courtesy of the Microsoft VSX tools.

Share/Save/Bookmark

1 comment

Creative Commons Attribution-ShareAlike 2.5 Australia
Creative Commons Attribution-ShareAlike 2.5 Australia