Web Resources and Other CRM Assets
Download all web resources and other CRM assets into a new or existing Visual Studio project. Other assets include:
- Create new web resources in Visual Studio and add them to CRM.
- Edit the properties of the web resource directly in Visual Studio.
- Publish a web resource to CRM with the click of a single button.
- Compare your local file to what is currently in CRM with the click of a button.
- Use Gulp to perform actions on a web resource prior to publishing to CRM..
- Refresh the contents of your local file from CRM with the click of a button.
In addition to the Xrm.Page object, intellisense is provided for attribute and control names and other parameters to Xrm.Page functions.
- Automatically add items to a specified solution whenever a file is created or published to CRM.
- Bulk link/add items to CRM from an existing Visual Studio project using an intuitive dialog.
- Bulk upload and publish items to CRM.
- Bulk refresh items from CRM to your Visual Studio solution.
- Build and publish your Silverlight project as a web resource with the click of a button.
File paths are honored when downloading or creating web resources in CRM
. This means that if you have the following name for a web resource: 'new_/Entities/Forms/AccountFormScripts.js',
when downloaded into your Visual Studio project it will be saved to the following relative path: '..\new\Entities\Forms\AccountFormScripts.js'. Also, when creating new files and uploading them to CRM,
XrmToolkit will suggest a name based on the relative path of the item in the file system.
- If your web resources are minified, you can optionally choose to 'Pretty Format' the file when downloaded from CRM into your Visual Studio project.
- Build, update and publish your plugin assembly to CRM with the click of a button.
- Use ILMerge as part of the build/publish process. You can easily setup your project to use ILMerge during the publishing process to CRM, with an intuitive GUI.
Intuitive wizard for creating new plugins or custom workflows. This includes functionality for creating an early bound/proxy class at the same time.
This process also generates the plugin configuration allowing you to register the plugin and any images with the click of a button.
Templates for plugins and custom workflows that use a 'LocalContext' to provide easy access to the following:
ITracingService, IOrganizationContext, Pre and Post images, and the target entity or entity reference.
Plugin Registration Tool. Similar to the one provided in the CRM SDK but with the following enhancements:
Configure everything without registering the actual records. This allows for setting everything up first and then registering with the click of a button. When you 'Un-register' an item,
the configuration is left in-tact so that if you need to re-register it, you can do so with the click of a button.
- Ability to register multiple steps at the same time.
- Ability to enable/disable multiple steps at the same time.
Ability to view dependencies for a plugin/workflow/step with the click of a button.
This is helpful if you need to unregister a workflow and need to know which workflows in CRM are using it.
Ability to see other plugins registered for the same entity and message.
This allows you to see the order of operations for a given entity and message which can be helpful when debugging and also when determining the 'order' of plugins.
- Ability to export the DLL of any plugin assembly stored in the CRM database.
- You can see any unregistered plugins or workflows in the plugin registration tool allowing you to register them without needing to upload the entire assembly just to register the plugin or workflow.
- Plugin assemblies are cached locally for quicker loading of the Plugin Registration tool.
Download a plugin assembly along with all of the registered items into a plugin configuration file in Visual Studio. This allows you to store a plugin and its registered steps and images
in source control as part of your ALM strategy. You can also use this file to easily transfer a plugin and all of its registered items to another organization.
Inject custom logic during the build process using MSBuild events.
You have access to the following events and properties:
- XRMTK_BeforeBuild - Called before using the built in build process of Visual Studio
- XRMTK_AfterBuild - Called after the build process of Visual Studio
- XRMTK_BeforeILMerge - Called before merging the assemblies using ILMerge
- XRMTK_AfterILMerge - Called after merging the assemblies with ILMerge
- XRMTK_BeforePublishAssembly - Called before publishing the assembly to CRM
- XRMTK_AfterPublishAssembly - Called after publishing the assembly to CRM
- Organization Name
- Organization Friendly Name
- Organization URL
- Discovery URL
- Currently selected CRM solution name
- Currently selected CRM solution GUID
- Currently logged in user
Early Bound Classes
Starting with v5, a new CLI is available that allows you to publish your custom plugin and workflow assemblies to Dynamics 365 without the need of Visual Studio.
This means you can deploy directly from a build server or a command line. For more information see here.