General
53 results found
-
XrmToolkit Site License
Is a site license possible to purchase?
4 votes -
Automatically validate strong name
Sometimes when using ILMerge, the strong name is not valid when the dll is created. It would be a nice feature to validate the strong name first before uploading. And if the strong name is not valid, automatically resign the dll to fix the issue.
1.) Run sn -vf *.dll
2.) Confirm that the dll is either a delay or test signed
3.) Run sn -R *.dll *.snk
4.) Confirm that the dll is now valid1 vote -
CRM data model in source control
We would like to have crm data model to be kept in TFS including entities and fields. We want to track/version any changes on the data model, associate these changes with proper workitem in source control.
9 votes -
Add summary comments to generated public/protected code
In our environment warnings are generated during deployment if any public or protected class, method, or property has no summary and param comments. We use Swagger which utilizes these comments.
For Example:
/// <summary>
/// Gets the error string.
/// </summary>
/// <returns>The error string.</returns>
/// <param name="attributeName">Attribute name.</param>
/// <param name="defaultErrorType">Default error type.</param>
protected override string GetErrorString(string attributeName, BaseProxyClass.eErrorType defaultErrorType)
{
if (_errorStrings.ContainsKey(attributeName))
{
return _errorStrings[attributeName];
}
return defaultErrorType == BaseProxyClass.eErrorType.Text ? TextError : NumberError;
}3 votes -
New versjon for Vistual Studio Code (Js/Ts functions + publish)
A light versjon that only support Javascipt/TS with Vistual Studio Code - generating intel. fiels for Js/TS and with publish to CRM funksjon.
- more if you like :)
14 votes -
extract interface from class with comments
When you want to create an interface for a class you can use the helper "extract interface" on the class definition. This does not copy the leading comments used with tools such as Swagger; i.e. the comment block created with the three forward slashes ///
For example:
/// <summary>
/// Configuration manager
/// </summary>
protected readonly IConfigurationKeyManager _configurationKeyManager;3 votes -
Ability to register plugin as data provider
I would like the possibility to register a plugin as data provider. Data providers are used in virtual entities.
8 votes -
Generate POCO or DTO early binding classes
Generate POCO or DTO early binding classes which do not have any references to the SDK. Any 1:n relationships are created as Property LIST<MyEntity>. Any Optionsets are generated as enums in separate file so there are no duplicates (i.e. status and statusReason ). The ability for these POCO classes to then generate an XSD without error. At run time AutoMapper could map from POCO to ProxyClasses
3 votes -
Support versioning of custom workflow assemblies
It would be nice if XrmToolkit supported the concept of versioning workflow assemblies in Dynamics. If you increment the major or minor build number of a workflow assembly, you can register a new copy of that workflow assembly with that new version and then switch over the workflows to the new version at your leisure. Here's an article on how it works: https://docs.microsoft.com/en-us/dynamics365/customer-engagement/developer/workflow/update-custom-workflow-activity-using-assembly-versioning
14 votes -
Add Actions and Views to generated proxy classes
It would be great to be able to select Actions and Views to automatically generate their own proxy classes. For Actions, it would generate a strongly-typed proxy that accepted the typed parameters and returned the output parameters. For Views, it would generate a proxy that lets you quickly get results from System Views on each entity by just querying that View proxy. This way you could quickly model queries in Dynamics in the Advanced Find and then easily reference them in code.
6 votesV7 was just released which includes support for generating proxy classes for ‘Actions’. For more information on this release see here: https://xrmtoolkit.com/WhatsNew/WhatsNewInV7
-
Execute publish and connection in parallel
Connecting to online instances of D365 can be a little slow so waiting for this step to complete before compiling and then uploading assembly/code is time consuming. I suggesting starting the connection attempt and building the project (plugin) at the same time, once they are both complete, upload. This will save 10-15 seconds per publish which happens a ton of times over the course of a work day.
4 votes -
Ensure correct DateTime operations
Ensure correct DateTime operations. Now Dynamics CRM supports two mode of working with dateTime attributes.
With or without UTC conversion.It would be nice if generated proxy will take it into consideration.
6 votes -
Add CalculateRollup function to early binding of a rollup field.
It would be great if I could Execute a CalculateRollupRequest if the field is a rollup field. Currently I have to extend the proxy class and so I could call the function. It could work similar to how lookup fields can RetrieveProxy<T> i.e. contactRecord.new_rollupfield.Rollup(OrganizationService) would execute the function.
2 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 -
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("newdropdownfield").setValue(PicklistAOption1);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 -
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
4 votes -
Support Plugin Profiler
I know the ToolKit uses the Plugin Reg Tool to do most of the work, but incorporated in Visual Studio. One feature of the Plugin Registration Tool that isn't with the ToolKit is using the Plugin Profiler. I assume you know what it is, but just in case, it's a solution for CRM that comes with the sDK/Plugin Registration Tool (PRT), from the PRT you can install the solution into your CRM solution, and once installed you can replay plugin messages, workflows, and then by attaching visual studio to it, you can debug. Seems like this would be a great…
30 votes -
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 -
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 -
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
- Don't see your idea?