General
-
Add Entity Metadata Repository Instead of hardcoded metadata information inside proxy classes, it would be awesome to provide this informati
Add Entity Metadata Repository
Instead of hardcoded metadata information inside proxy classes, it would be awesome to provide this information inside a repository.Something like:
var entityRepositoryItem = MetadataRepository.GetEntity(param entity);
var attributeItem = entityRepositoryItem.GetAttribute(string name);Console.WriteLine(attributeItem.Max Length);
Console.WriteLine(attributeItem.Logicalname);
...6 votes -
Enhance the Picklist Attribute Intellisense Feature to use a constant to represent the numeric value for the SetValue method.
The current intellisense feature for picklist attribute will generate something like this.
Xrm.Page.getAttribute("new_dropdownfield").setValue(912210002);The value 912210002 makes it less readable for future maintenance. A suggestion is to rather do the following.
Xrm.Page.getAttribute("new_dropdownfield").setValue(PicklistA_Option1);Define PicklistA_Option1 in the same file automatically or in an enumerations.js file that can be include.
As part of the Web Resource Minification remove this reference.4 votes -
Have an option to automatically disable work flows when publishing new ones
Straight forward instead of manually having to deactivate all of these workflows. Maybe there's a way to remotely deactivate them publish and reactivate them.
1 vote -
Add unit testing mock ability
Add the ability to easily create/test plugins and other code. Something similar to https://github.com/daryllabar/XrmUnitTest or https://dynamicsvalue.com/home
1 vote -
More verbose publishing errors
When publishing, there is just generic errors. It should be specific to the file if that's possible.
Otherwise someone would have to go through each file individually to figure out which is the culprit. (time consuming, especially if there are many resources)
Example:
[XrmToolkit v5.1.0.0] -- <Error> -- 07/09/2017 1:56:19 PM -- Errors were encountered during the publish process:
Errors:
Unable to update the file in CRM: Object reference not set to an instance of an object.
Unable to update the file in CRM: Object reference not set to an instance of an object.
Unable to update the file in…2 votes -
Support VS2015 Shared Projects
Be able to add shared files (such as proxy classes) into a VS2015 Shared Project, so that they can be managed in one place, without having to resort to building a DLL and using ILMerge
26 votes -
Allow relative Reference Directories for ILMerge
When using ILMerge for project, when Override CRM Reference Directory is used, it uses absolute directory locations and thus every developer must add their own reference directories.
Would be nice if we could use relative paths to, for example, reference dlls from nuget packages.
11 votes -
Add a method to proxy classes to lookup option set values via string
It would be nice if the the ExtensionMethods or some other feature in the BaseProxyClass would return an option set value via text based on the [Description] in the enum. Perhaps this already exists but, I did not see it in the documentation.
Something like
OptionSetValue ov = new OptionSetValue(ExtensionMethods.GetOptionSetValue("Active"));9 votes -
Support multi select of C# projects to publish all at once
With a solution structure, where every plugin has an own visual studio project its very hard to publish multiple plugins at once. (e.g. when a method in the base class has been changed)
Please support multi selection of C# projects, like on webresources by "Right click" > "CRM" > "Build and publish".Thanks,
19 votes -
Pretty print the sitemap xml
...so that when I commit it to source control, I can use standard diff tools to review changes
4 votes -
Compare webresouces - advise stale copy before publish
We sometimes have multiple developers working on same webresources. Ability to download the latest from CRM before start of edit and to compare server version with the original downloaded version before publish will allow us to know if some one else have make script changes while I am working on a file. This will prevent developers overwriting each others changes. Comparing local and server files manually each time you modify is not productive.
16 votes -
Use same case as default namespace on generated proxy classes
I have a project with the namespace "com.crengland.services.Web.CrmApi.Xrm" but XrmToolkit always capitalizes the first character of the namespace when generating proxy classes. I have to manually replace the namespace in generated proxy classes to fix this issue.
1 vote -
Ensure IntelliSense Fully Works Alongside ReSharper
The attribute intellisense didn't seem to work unless I suspended ReSharper. (using ReSharper 2016.2.2).
13 votes -
publish on Build instead of Save
I tried using the option to auto-publish on Save, but I actually save a *lot* (because VS crashes hurt) and only want to incur the publish delay when things are in a particularly good state. In other development this is when I do a Build, and I do build my CRM client scripts (Typescript ftw), so my ideal would be for a build to publish files changed since the previous build. Slightly less ideal but still good: publish all of the project's checked-out files. Worst case, manually flagging files to publish works, too.
5 votes -
Add StringLengthAttributes to string properties of auto generated classes.
Would it be possible to add StringLengthAttributes to string properties of auto generated classes? The length should reflect the maximum length of the CRM field.
It would help much, because right now setting a value that is to long for CRM does not raise an exception but just leaves to field empty in CRM (nothing is saved).
4 votes -
12 votes
-
Show custom actions in the "Message Event" list when creating new plugins
Currently, only system messages are available when creating/registering new plugins (e.g. Create, Save, Update, etc.). Users should be able to select from active custom actions that have already been created as well. Microsoft's plugin registration tool currently supports this.
8 votes -
Support deploying to CRM by providing an API that would support using from a command line or from a .Net app.
Should be able to call an API to publish a crm asset or plugin/workflow assembly to the CRM organization taking into account all the XrmToolkit configuration information.
8 votesThe initial version of this has been released in v5. It supports merging (ILMerge) of plugin assemblies and publishing them to CRM. A future release will include the ability to deploy other assets, ie web resources etc.
-
Remember 'DO NOT LINK' option and allow link option/target to be changed
I use 3rd party libraries with intellisense files and need to be able to permanently mark these as not linked to CRM.
In other instances I need to be able to correct the link eg. created a new instance instead of linking to an existing instance in CRM or vice versa.
1 vote -
v4 - Default the name of the of plugin step when registering
Right now when you register a plugin step the name is blank. I suggest that name to be default to something.
for example if the Plugin is 'MyPlugin' and the Message is 'Update' and the entity is 'Opportunity' then default the plugin name to 'MyPlugin - Update - Opportunity'
A configurable default would be nicer (as I'm sure there are a lot of different naming standards out there)
3 votesThanks for the suggestion! This has been implemented in v4.3 based on a hard coded algorithm. We agree that using a template would be great and so until this portion is implemented we’ll keep the status set to ‘started’.
- Don't see your idea?