Friday, July 10, 2009

Generate runtime members -- eXpand


Today I am going to saw you how easy is the Generation of runtime members. eXpand provides a controller that extends model schema and allow runtime generation of members without writing even 1 line of code (Xaf power to the people!!!)

For doing this You have to use a combination of features from eXpand.DictionaryDifference.dll && eXpand.ExpessApp.Win.dll

This generation is doable due to the fact that we have use use DictionaryDifference module to store the model in the database, and since there is a clear distinguish between user model and application model, we can have use dictionarydifference UI to set the Model editor attribute that does that expansion, which is the IsRuntimeMember attribute defined at eXpand.ExpressApp.SystemModule.AddRuntimeFieldsFromModelToXPDictionary controller

Imagine the power you have, now you can create a more dynamic extension of model schema cause you at runtime!!

Our scenario will involve adding a new Mobile Phone member to our User class publish that change to all applications that run in our network

DictionaryDifference take care also the debugging scenario by using the model.xafml stored in your disk as application model when debugging and the one stored on the database when not, so becarefull when running your solution at debug mode because it always is going to use as an application model the one stored at your disk and when you do not run at runtime (CTRL+F5) the one stored at the database will be used

see demo video

eXpand is available at

Subscribe to XAF feed
Subscribe to community feed



Post a Comment