Personalized Community is here!
Quickly customize your community to find the content you seek.
Choose your path Increase your proficiency with the Dynamics 365 applications that you already use and learn more about the apps that interest you. Up your game with a learning path tailored to today's Dynamics 365 masterminds and designed to prepare you for industry-recognized Microsoft certifications.
Visit Microsoft Learn
2020 Release Wave 2Discover the latest updates and new features to Dynamics 365 planned through March 2021.
Release overview guides and videos Release Plan | Preview 2020 Release Wave 2 TimelineWatch the 2020 Release Wave 1 virtual launch event
Ace your Dynamics 365 deployment with packaged services delivered by expert consultants. | Explore service offerings
Connect with the ISV success team on the latest roadmap, developer tool for AppSource certification, and ISV community engagements | ISV self-service portal
The FastTrack program is designed to help you accelerate your Dynamics 365 deployment with confidence.
FastTrack Program | Finance TechTalks | Customer Engagement TechTalks | Upcoming TechTalks
I am trying to use the USD Customization file feature to load my dlls by first uploading them in the Customization Files but I am getting below error,
I have around 4 dlls but getting error only on this. The assembly name this error shows is not the correct assembly but it is another assembly and hence, it can not find this Custom Layout class in this assembly. Please refer below image for my Panel layout hosted control,
Please note that this works absolutely fine when i place these dlls in my root USD folder but somehow using this customizations file i am getting this error. I have already placed Content_Types file as well. What could be the issue here. My USD Version is 4.1 and crm 8.2
Have you added [Content_Types].xml file into customization.zip file that is uploaded.
A [Content_Types].xml file that describes the customization. This file is an OpenXML file that provides MIME type information by listing the default file extensions for the files that are included in the Unified Service Desk customization. Typically, these are .dll, .xml, .exe, and .config file types, but you can add almost any file type that’s supported by the Windows PC where the Unified Service Deskclient will run.
Here is an example.
<?xml version="1.0" encoding="UTF-8"?>
<Default ContentType="application/zip" Extension="xml"/>
<Default ContentType="application/zip" Extension="zip"/>
<Default ContentType="application/zip" Extension="css"/>
<Default ContentType="application/zip" Extension="htm"/>
<Default ContentType="application/zip" Extension="gif"/>
<Default ContentType="application/zip" Extension="dll"/>
</Types>Also the error appears to be of AssemblyType , please verify the type is fully qualified name i.e. namespace.classname, sometime the namespace of the class is not same asAssemblyName , hence this issue might happen.
D365 Support Engineer
Yes I have this Content_Type.XML file and it has all this information. The issue is happening only with one dll, it is just picking up the wrong namespace I dont know why, because when i put my dlls manually in the root folder it works without any hassle.
Also,In my second screenshot you can see that it is a fully qualified name with namespace.classname.. Do I have to put this name anywhere else aswell?
verify that the dll is extracted out of the customizations.zip file successfully in to this folder.
Got to project properties in vs and verify the default namespace is same as given,
ensure the class is not private.
1. The project property has the correct namespace name.
2. The class is not private.
3. I have checked following folder but no dll is extracted in this folder,
Folder path you searched is incorrect. Search under this path.
This is users local profile path not the roaming profile. Delete the content of this folder first along with the roaming profile folder %appdata%/microsoft/usd before your test.
I tried again after removing the folders. And after that I have re-tested. The results are that all the files are getting extracted in the following folder,
but still I am getting same error on only 1 dll
The incorrect dll that USD is using to try to extract you custom hosted control, is it also part of the customizationsfiles zip package?
Can you make this dll package in to separate customizationsfiles zip package.
Yes it is also the part of my customizedzip package and hence this dll is getting extracted at the above location as well.
You mean, I should keep only this incorrect dll in my customized zip files package?
I meant to create multiple customizationfiles records each with its own dll that has custom hosted control types defined.
Does incorrect dll(.CRM.USD) being picked by USD to extract your CustomLayout hosted control, has got any other custom hosted control types that needs to be extracted?
I did encounter same error working with a customer when a new dll is bundled inside the zip of an existing CustomizationsFile record and I could resolve as I proposed above i.e. created a new CustomizationsFile record with its zip file of this new custom hosted control dll.
Can you please test and confirm the same.
D365 Customizations Support Engineer
Thank you very much for your help.
Basically, I tested it thorougly and the issue was with the Dll that was using ILmerge.props file. I wonder why was it causing issue. I removed this DLL from my customization files zip and ran it again it worked perfectly fine for me.
Then, I tested your suggested method also by keeping each dll as a seperate Customization record and it worked also. However, if I again add the same ILMerge DLL as a seperate record also then again it gives the same error.
I wonder why..
Unfortunately customization files feature is neither tested for ILMERGE custom hosted control assemblies nor build to handle any ILMERGED assemblies.
Although I could not envision why ILMERGED assemblies are required in custom hosted control creation, We recommend not to burn dll into custom hosted control dll with ILMERGE or refer assemblies that are built using ILMERGE in custom hosted control project.
Please consider this thread closed, as issues with ILMERGE are out scope from D365 Support standpoint.
Business Applications communities