Ayende wrote about Setting Up Zero Friction Projects - Data Access, and mentioned the new SchemaUpdate feature in NHibernate.
The idea being that the ddl is automagically created from the nhibernate hbm.xml files, and executed against the delvelopers local database.
- Developer A changes the Order.hbm.xml where he adds a new field Discount.
- In ApplicationStart the ddl alter script is generated and executed against Developer A's local database, the next time the developer starts the application.
- Developer eventually does a check-in of the Order.hbm.xml, along with the other changes.
- Developer B does a get latest.
- When he starts the application, ApplicationStart executes the change dll, and now Developer B's local database is up to speed.
At what cost? Well, almost zero :-)
I have created a sample C# VS2008 Solution, that can be downloaded here.