在插件注册期间,有三个用于存储程序集的选项1.GAC 2.Disk 3.Database
任何人都可以解释一下如果适当使用上述位置,如果用例子解释会更明显吗?
答案 0 :(得分:3)
首先,您需要考虑部署类型,如果是CRM Online或CRM OnPremise。
对于CRM Online插件程序集必须在Sandbox中注册。
对于CRM OnPremise插件程序集可以在Sandbox中注册或在Sandbox外部注册(选项无)。
如果隔离模式是Sandbox,则位置始终为Database,其优点是存储在数据库中的插件会自动分布在数据中心群集中的多个CRM服务器上。
缺点是您无法将外部程序集安装到数据库中,因此如果您的插件使用外部程序集,则需要在注册之前将其与插件程序集合并,或者手动将外部程序集部署到GAC或CRM bin文件夹。
如果您在Sandbox之外注册插件程序集(意味着您是OnPremise),您可以选择将其部署到GAC,在这种情况下,优点是您可以充分利用GAC版本控制系统,防止版本冲突如果需要多个版本,则相同的程序集 缺点是注册需要gacutil.exe,这可能是某些部署的问题。
如果您选择部署到磁盘,插件程序集将被复制到CRM bin文件夹,在这种情况下,调试将更容易(但您也可以在数据库中注册时调试插件)但是你输了也是GAC版本优势。