Plugins Dynamics CRM 2011插件设置自定义字段值

Plugins Dynamics CRM 2011插件设置自定义字段值,plugins,dynamics-crm-2011,Plugins,Dynamics Crm 2011,我有Dynamics CRM 2011插件(retrieve,post action),它在检索联系人实体时只需设置自定义字段的值: public void Execute(IServiceProvider serviceProvider) { IPluginExecutionContext context = PluginExecutionContext)serviceProvider.GetService(typeof(IPluginE

我有Dynamics CRM 2011插件(retrieve,post action),它在检索联系人实体时只需设置自定义字段的值:

    public void Execute(IServiceProvider serviceProvider)
    {            
        IPluginExecutionContext context = PluginExecutionContext)serviceProvider.GetService(typeof(IPluginExecutionContext));            
       if (context.OutputParameters != null)
       {
          Entity entity = (Entity)context.OutputParameters["BusinessEntity"];
          if (entity.Attributes.ContainsKey("new_markerexists") == false)
                return;
          entity["new_markerexists"] = "Marker exists.";
但是,CRM插件找不到此字段或任何其他自定义字段。它适用于标准字段

我错过了什么

谢谢

如本文所述:

在CRM中,仅包括已设置或更新的属性


“我的自定义字段”没有任何值集,因此CRM只是没有将它们包含在entity.Attributes集合中。

如果自定义字段为空,则不会将该字段添加到属性集合中。如果你想得到自定义字段,你必须给它提供一些值。我已经测试过了,它正在工作

什么意思是“CRM插件找不到这个或任何其他自定义字段”,你的意思是如果你做
实体[“firstname”]=“TEST”
使用
firstname
作为标准字段,您的检索将返回更新后的值?请将您的答案标记为正确答案,这将帮助其他用户找到相关答案。@GuidoPreite:谢谢,我会的,但我必须等待48小时才能接受我自己的答案:谢谢您的回答。我只是在一个帐户的一个属性中添加了一个值,然后该属性出现在我的集合中。不包含没有值的attributes有点道理,但另一方面,这可能是一个很难弄清楚的问题。