Occasionally you may run into issues with ComponentOne XapOptimizer or you may have questions about using the application. This section outlines some solutions and tips for using ComponentOne XapOptimizer.
The following list details some tips for using ComponentOne XapOptimizer:
• Reflection: If you are using the System.Reflection API in your code to dynamically create objects in the application, make sure to you "Pin" all the corresponding Types you may instantiate using this technique. For more information, see Reflection Warnings.
• Navigation APIs: Several third-party navigation libraries use System.Reflection API to dynamically instantiate the visual components to be displayed to the users. So, the third-party library may be using System.Reflection API even when you are not using it explicitly. If that's the case, make sure to "Pin" all the visual components (Pages and UserControls) you know that are being used in the application
• Themes: Themes are usually loaded dynamically at run time, so XapOptimizer may not find any dependencies to your Themes. Make sure to "Pin" any XAML resource that your application may be using for the Themes you are using in the application.
• Obfuscation: If the application is not working correctly, the Web browser will display an error message. Sometimes this error message can help you determine what's missing in the optimized assembly. Disabling obfuscation can be helpful when trying to interpret these messages. Also, it's recommended that you not obfuscate System assemblies (for example System.Xml.Linq).