Early-bound Template-based Code Generator


An XrmToolBox plugin that can be used to generate Early-bound code from a CRM Schema using a customisable T4 Template.

+ Preserved the original CrmSvcUtil structure and logic.
+ Customize the way the code is generated.
-- You get a default T4 template for the code that is generated, with a multitude more features than the official tool (features below).
-- You can rewrite the whole template if you wish for any possible requirements.
+ Replaced the SDK types with .NET types.
+ Generate only what's needed
-- Only choose the entities required.
-- Only the fields required.
+ Additional control
-- Option to use display names of entities and fields as variable names instead of logical names.
-- Override field names inside the tool's UI.
-- Ability to Lock variable names to avoid code errors on regeneration.
+ Support for strongly-typed alternate keys, for entities and Entity References.
+ Add annotations for model validation.
+ Generate metadata.
-- Field logical and schema names.
-- Localised labels.
+ Automatically limit attributes retrieved from CRM on any entity in a LINQ to the ones choosen (filtered) in the tool (check new entity constructors).
+ Many options to optimise generated code size even further.
+ Generate concrete classes for CRM Actions.
+ Support bulk relation loading.
-- Support filtering on relation loading.

Latest version release notes

Added: [template] unify global option-sets (thanks https://github.com/ClemensWon)
Updated: libraries to more recent versions
Fixed: Use Display Names option not saved correctly
Fixed: [template] ActivityParty naming issue (thanks https://github.com/ClemensWon)
Fixed: [template] multiselect option-sets mapping to global option-sets (thanks https://github.com/ClemensWon)
Fixed: [template] consider the 'use display names' setting for global option-sets
Improved: filtering feature now works over logical and display names, and renames
Updated: latest custom libraries
Fixed: template issues
Fixed: mishandling errors
Added: Filter Details window row filtering
Fixed: generated code 'labels' syntax error
Added: recent settings list (load history)
Added: reset option for the template text
Added: toast notification for clearer status
Improved: load and save logic
Fixed: fixed cancel button
Fixed: issues
Added: all missing features from VS extension (click on 'Quick Guide' for more info), except Contracts
Added: keep track of paths (settings, template, and code) used in previous sessions and the links between them
Fixed: layout issues
Fixed: assembly issues
Changed: updated package name
Initial release


Version Release date Number of downloads Rating 12/14/2021 11:30:54 PM 12146 0.00 4/30/2021 1:21:16 PM 10938 0.00 10/4/2020 5:57:00 PM 4899 5.00 9/30/2020 10:33:24 PM 503 0.00 9/28/2020 8:24:04 PM 489 0.00
Show more versions (5 more)


Latest version

No feedback yet. Add yours

Other versions

Mohammed El Sayed () - version

Related information

Author: Ahmed Elsawalhy Latest version: Released on: 12/14/2021 Nuget package Id: Template-based-CRM-Code-Generator-Plugin Open Source: true Go to project web site Ratings (all versions) 5Average rating 1Number of ratings Downloads 12146Latest version 30736All versions 3073.60Average per version Tags Customizations Development