开发者在使用CrmSvcUtil和XrmToolBox早期绑定生成器时遇到问题的故障排除指南

开发者在使用CrmSvcUtil和XrmToolBox早期绑定生成器时遇到问题的故障排除指南

💡 原文英文,约600词,阅读约需2分钟。
📝

内容提要

生成早期绑定类是开发Dynamics 365 CE自定义的第一步,但可能遇到程序集加载错误、OptionSet枚举缺失、类分散、IntelliSense错误、插件类未找到及缺失using指令等问题。解决方案包括生成强名称密钥、确保OptionSet枚举正确生成、选择单文件输出、重新生成文件、确保DLL部署及手动添加using指令。使用早期绑定生成器插件可简化此过程。

🎯

关键要点

  • 生成早期绑定类是开发Dynamics 365 CE自定义的第一步,但过程可能会遇到问题。
  • 常见问题包括程序集加载错误、OptionSet枚举缺失、类分散、IntelliSense错误、插件类未找到及缺失using指令等。
  • 解决程序集加载错误的方法是使用sn.exe生成强名称密钥并在AssemblyInfo.cs中签名。
  • 确保OptionSet枚举正确生成,检查XrmToolBox中的“生成OptionSet枚举”设置。
  • 为避免类分散,可以选择在XrmToolBox中使用单文件输出选项。
  • IntelliSense错误通常是由于生成文件未正确编译,需确保使用相同的元数据快照重新生成文件。
  • 确保早期绑定DLL与插件程序集一起部署,避免插件类未找到的问题。
  • 手动添加缺失的using指令以解决编译错误。
  • 使用早期绑定生成器插件可以简化生成过程,并保持生成类的版本控制。
  • 早期绑定类简化了与Dynamics 365数据模型的交互,但自动生成代码可能会出现问题。

延伸问答

在使用CrmSvcUtil时遇到程序集加载错误怎么办?

可以使用sn.exe生成强名称密钥,并在AssemblyInfo.cs中签名你的程序集。

如何确保OptionSet枚举正确生成?

在XrmToolBox中检查“生成OptionSet枚举”设置,或使用CrmSvcUtil的/generateOptionSetEnums:true参数。

如果生成的类分散在多个文件中,该如何处理?

在XrmToolBox中选择“单文件输出”选项,或手动合并生成的文件。

IntelliSense错误通常是由什么引起的?

通常是因为生成的文件未正确编译,需确保使用相同的元数据快照重新生成文件。

如何解决插件类未找到的问题?

确保早期绑定DLL与插件程序集一起部署,并验证所有依赖项是否正确合并和签名。

缺失的using指令如何处理?

手动添加缺失的using指令,或在编译前将生成的文件包裹在正确的命名空间中。

➡️

继续阅读