【问题标题】:crm dynamics online, pass custom url parameter to plugincrm动态在线,将自定义url参数传递给插件
【发布时间】:2017-01-19 05:02:18
【问题描述】:

我想创建一个从 url 读取自定义参数的插件。我找到了这个 一段代码

https://blogs.msdn.microsoft.com/madenwal/2011/04/15/retrieving-querystring-paramaters-in-a-crm-plug-in/

当我尝试为此调用实现它时

  var reference = HttpContext.Current.Request.QueryString["parameter_reference"]

我收到以下错误:

System.Security.SecurityException:该程序集不允许部分受信任的调用者。

我尝试通过将属性应用于程序集来解决此问题,如本文所示:

https://support.microsoft.com/en-us/help/839300/how-to-use-the-allowpartiallytrustedcallers-attribute-to-call-an-assembly-that-has-a-strong-name-from-a-web-page-by-using-visual-c-.net,-visual-c-2005-or-later-versions

我不确定 httpcontext 需要哪些安全权限,即 FileIOPermission 或 PrincipalPermission。所以我最终使用了 SecurityPermission 选项。

但是这并没有解决问题。任何想法将不胜感激。 提前致谢。

【问题讨论】:

    标签: c# asp.net .net dynamics-crm


    【解决方案1】:

    您可能会收到该错误,因为您的插件在沙箱中运行。

    Plug-in isolation, trusts, and statistics

    Microsoft Dynamics 365(在线和本地)支持执行 隔离环境中的插件和自定义工作流活动。在 这种隔离环境,也称为沙盒、插件或 自定义活动可以利用 Microsoft 的全部功能 用于访问组织 Web 服务的 Dynamics 365 SDK。访问 文件系统、系统事件日志、某些网络协议、注册表、 在沙盒中阻止了更多。

    您可以尝试将插件移出沙箱 - 在插件注册期间寻找隔离模式。

    但是,我建议完全采用不同的方法 - 例如从记录字段中读取数据。从查询字符串中读取有点不寻常,并且已知查询字符串格式会在 CRM 版本之间发生变化。

    【讨论】:

    • 感谢您的回复。我们的环境是在线的,因此无法将插件移出沙箱。这个场景有点不寻常,但我最终实现了一种解决方法,它使用记录 ID 作为参考(而不是自定义参数)来查询外部服务。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-01-29
    • 1970-01-01
    • 1970-01-01
    • 2021-06-05
    • 2022-01-06
    • 2022-11-25
    相关资源
    最近更新 更多