gpt4 book ai didi

c# - 从 Ribbon JScript CRM Online 2011 调用 C# 代码

转载 作者:可可西里 更新时间:2023-11-01 02:57:39 25 4
gpt4 key购买 nike

我需要在单击实体上的功能区按钮时执行一些代码,以更新来自 CRM Online 2011 的一些相关数据。我不想在 JScript 中编写所有这些逻辑。有没有办法从 JScript 调用 C# 代码?我查看了 Microsoft 在功能区中使用的 JScript 文件,它看起来像这样:

Mscrm.Campaign.copyCampaign = function (campaignId, saveAsTemplate) {
var $v_0 = new RemoteCommand("MarketingAutomation", "CopyCampaign", null);
$v_0.SetParameter("campaignId", campaignId);
$v_0.SetParameter("saveAsTemplate", saveAsTemplate.toString());
var $v_1 = $v_0.Execute(),
$v_2 = $v_1.ReturnValue;
openObj(Mscrm.EntityTypeCode.Campaign, $v_2, null, null, Mscrm.NavigationMode.NavigationModeInline, null);
Mscrm.Utilities.refreshParentGrid(Mscrm.EntityTypeCode.Campaign, campaignId)
};

我看到正在放置一个 RemoteCommand 调用,我认为它会返回到某些 Web 服务功能。我希望做这样的事情。我可以添加自己的网络服务功能吗?

作为测试,我能够从 JScript 调用以发送实体的“分配”消息。这可能与插件一起工作,但发送消息以执行实际上并未发生的执行事件只是为了运行一些 C# 代码(“分配”、“更新”等),这似乎很奇怪,我不这样做看不到创建您自己的消息的方法。

最佳答案

在 2011 年,您无法添加自己的网络服务或创建自己的自定义插件消息。我们发现这样做的最佳方法是:

  1. 设置专门用于在服务器上运行自定义代码的实体。
  2. 为其提供称为消息名称的属性和另一个属性,以您选择的任何格式(XML、JSON 等)传递参数
  3. 在您的 JavaScript 中,创建传递正确参数的实体实例。
  4. 将插件附加到该实体的 Create 消息,然后它会读取参数并执行您想要的任何自定义代码。

虽然只是随机传递一个 Assign 消息或其他东西可能会起作用,但在 Microsoft 看来它可能不受支持,如果其他人不得不查看这个系统,调试起来会非常困难。

关于c# - 从 Ribbon JScript CRM Online 2011 调用 C# 代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5091565/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com