0

无法让 MSBuild/Visual Studio 2012 将 CRM 2011 插件程序集部署到命名的 CRM 解决方案。

我有 2 个项目/SLN。一方面,我可以精确控制构建将插件程序集部署到哪个 CRM 解决方案;我的msbuild(称为 build-1)使用我的自定义实体/表单和插件创建 CRM 解决方案。msbuild /p在另一个方面,尽管通过for CRMOrganization, CRMSolutionName, CRMDiscoveryServer, '指定了确切的值CRMDiscoveryServerScheme,但生成的 CRM 解决方案仅包含实体/表单。插件已部署但未正确放置到默认解决方案中(称为此 build-2)。

我已经通过从 build-1 复制/粘贴值(SLN 和项目名称除外)创建了 build-2 ...并且我不明白为什么 build-1 将插件部署到我命名的 CRM 解决方案,但是 build- 2 将它们部署到组织的默认 CRM 解决方案。

有任何想法吗?

4

2 回答 2

2

CRM 可能会专门将显示名称而不是架构名称作为解决方案名称。

于 2013-10-03T13:35:02.327 回答
1

不幸的是,VS010 和 VS2012 版本中的 CRM Developer Toolkit 仅在解决方案级别进行配置。因此,尽管向您的解决方案添加了多个项目,但它们都将在解决方案级别使用 CRM 组织设置。恐怕这是自该工具的第一个版本以来就存在的一个相当烦人的限制。

VS 使用的 MSBuild 目标文件 (Microsoft.CrmDeveloperTools.CrmClient.target) 位于默认安装位置C:\Program Files (x86)\MSBuild\Microsoft\CRM。如果您想滚动自己的构建目标,此文件夹还包括包含 MSBuild 任务的支持程序集。

我过去曾简要地看过这个,但要提醒一句,该程序集中的许多类都是密封的,因此扩展它们是不可能的。

于 2013-09-23T20:04:20.300 回答