General
56 results found
-
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 -
Customer Self-Service Portal
Login. See the invoices, license count and license id of licenses my company has purchased so i can easily transfer license if staff leave our organisation.
5 votesUnfortunately, this will not make it as part of the v8 release. I apologize for any inconvenience. This will be considered for a future release.
-
Add empty check on ToEntityReference method
Add this Guid.Empty check and return null if empty.
Reason:
EntityReference account = new Account();This should assign null but instead it assigns an EntityReference with Guid.Empty. This throws an error when trying to Save.
The error can be resolved if it assigned null as EntityReference instead.public EntityReference ToEntityReference() { if (Id == Guid.Empty) return null; return new EntityReference(LogicalName, Id) { RowVersion = RowVersion }; }4 votes -
XrmToolkit Site License
Is a site license possible to purchase?
4 votes -
Add OrganizationServiceContext support to proxy classes like early bound classes
it would be great if OrganizationServiceContext could be used like early bound class's with "Crm Service Util" or Entity Frameworks
how i imagine using
create OrganizationServiceContext then use the context to query (like ef or the context created when generating early bound class's with "Crm Service Util")
update multiple entities using the awesome smart change tracking
run a single context.SaveChanges() (like ef or "Crm Service Util" but with the smart change tracking keeping track of what needs changing saving)
4 votes -
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 -
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 -
Create VS Project for new Power Pages Solution
Ability to create VS project from new Power Pages portals. Currently can only select Power Apps Portals.
4 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 -
Improvements to Development of Dependent Assembly Plugins (Plugin Package)
When exporting a solution with a plugin package component, the pluginpackageid isn't exported. This cause an issue where importing the solution will generate an unique pluginpackageid per environment.
XrmToolkit uses 'PluginAssemblyPackageId' to match plugin packages based on pluginpackageid. This can cause an issue when using the same plugin package across multiple environments.
Ideally we would like XrmToolkit to match plugin package based on the name rather then the pluginpackageid.
4 votes -
Visual Studio 2026 Support
Visual Studio 2026 has just been announced and we're hoping that XrmToolkit will be compatible with it once the final version of the IDE will be released. Currently only the Insider Preview version is available.
If possible, we'd like to know if this compatibility is going to be within the current v8 version of XrmToolkit or will it be a new major v9 version.
4 votesIt appears that VS2026 supports extensions built for VS2022. I did some preliminary testing and it appears that XrmToolkit works without issues in VS2022. Please reach out if run into any problems.
-
Plugin registration shown Execution User column
Would be great to see at a glance the plugin message executing user as a column. This would quickly identify which messages are registered as impersonations.
3 votes -
Typescript Intellisense XRM Namespace
Please make the Namespace of the current "XRMBase" changable or put it fixed to Xrm.
It's pretty annoying when working with Xrm.Utility... etc. so you gotta fake it every time with declare const Xrm: XrmBase<any> or something similarAfaik the intellisense files are created by xrmdefinitelytyped(?) and they have a setting for that but where to store the config?
3 votes -
Setup for Managed Identity for Plugins and signed assembly
As part of the security changes happening in power platform, the plugin configurations will need to be signed if we are going to be using the new managed identity feature, without the need of having to use app registrations, secrets and storing those in a manner that is not secure, and requiring renewal. Part of the process is that the plugin will need to be signed with a certificate. The instructions for this process is found at https://learn.microsoft.com/en-us/power-platform/admin/set-up-managed-identity
3 votes -
return an int of updated records in the Update method
On the Update method of BaseProxyClass, return an int of updated records. If no Update was sent because _changedValues.Count was 0, it should return 0, otherwise 1. This would help to count the amount of updates that were sent for logging purposes.
public int Update(IOrganizationService service) { if (_changedValues.Count > 0) { service.Update(GetChangedEntity()); _changedValues.Clear(); return 1; } return 0; }3 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 -
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 -
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 -
Use Publish instead of PublishAll when publishing PCF Controls
When building and publishing a PCF Control with XrmToolkit, I can see in the solution history that a PublishAll is executed. This step takes a lot of time. Could you instead just publish the pcf solution?
3 votes
- Don't see your idea?