This article was moved to MDriven Wiki – Faster prototyping with Turnkey
MDriven Turnkey is very fast when it comes to creating and changing systems. But nothing is ever fast enough.
When you use MDrivenDesigner you have the prototyping tool that can show you the actions and general flow in a WPF generated app – but it is not exactly the same as the html5 apps that you get with Turnkey.
Pressing the Cloud-button and uploading the model to Azure or wherever your MDrivenServer resides only takes a few seconds – but still – that is a few seconds.
Developing detailed information systems is grinding work – constant change – and acting on new ideas once you see the result of your initial change. We NEED and WANT the round-trip to be insanely tight.
We are aiming for a Local Turnkey that is just as fast as the prototyper for WPF.
Presenting the Local TurnkeyPrototyper
This is what you need:
1. A local IIS with IIS Management Services installed. You add Management Services for IIS from Add/Remove Windows features.
2. Web Deploy for IIS (google to find Microsoft web deploy). This gives you the Import/Export application menus from with IIS Admin:
3. MDrivenTurnkey – you get this from the build machine
This what you do:
1. In IIS Admin – Import application – find the downloaded MDrivenTurnkey zip:
Give the new turnkey-site a name:
2. Make a note of the url to the new site and also the disk search path to the site root. In my case:
http://localhost/MDrivenTurnkey2000 (http is fine)
3. Now we want to run our/any model in this local turnkey. Start MDrivenDesigner. Save the initial model somewhere nice – in my case C:\temp\TurnkeyPrototyping\SampleModleForAssociations.modlr
4. Press the “Play” button in MDrivenDesigner, click Local TurnkeyPrototyper, fill in the url and disk path to the site from above
Then press start system, followed by “Run Model and continue modelling”
IF THIS DOES NOT WORK IT HAS DO WITH FILE RIGHTS!
The turnkey site needs access to your modlr file – MDrivenDesigner needs access to your site files.
Fix like this:
1. Give MDrivenDesigner access to site:
In my case properties/security on C:\inetpub\wwwroot2\MDrivenTurnkey2000
2. Give the site access to the modlr file library:
In my case properties/security on C:\temp\TurnkeyPrototyping
Add rights full control for account IIS_IUSRS (the account that execute your app pools)
What you have now is a local Turnkey site that does not rely on an MDrivenServer – instead it use XML-persistence and it saves the file next to your model:
* You do not need to set up https – the local prototyping Turnkey suffice with http
* Whenever your Modlr file change – the local turnkey refresh the model
* Put different Modlr files in the same directory – they can use the same Turnkey (one at a time). This means that I can switch model super fast.
* If I want to develop Angular directives, controls and page overrides – I can do so in the _AssetsTK folder with fast local machine round-trip
If I have this:
and I change the ViewModel like this:
Save model – refresh web:
I create a SampleModleForAssociations_AssetsTK folder with a sub folder Content with a tkusercss.css – hit save in MDrivenDesigner (this triggers Turnkey to reload internals and mirror over the assets):
When I have iterated really FAST – I can seamlessly upload to a normal cloud Turnkey – get a evolved db, get all the assets mirrored there and have the multi-user environment act exactly as my local prototype.