【问题标题】:Plugin with post im trying to udate on create message带有帖子的插件我正在尝试更新创建消息
【发布时间】:2016-10-20 07:09:31
【问题描述】:

在创建(后期操作)时注册了一个插件。它有效,但之后我在表单上添加了两个字段。在创建时,我正在更新表单的字段值。它可以工作,但在比较结果实体属性时失败:

QueryExpression QrySales = new QueryExpression() { EntityName = Sales.LogicalName, ColumnSet = new ColumnSet(true) };
EntityCollection SalesCollec = Service.RetrieveMultiple(QrySales);
foreach (Entity sales in SalesCollec.Entities)
{
  if (sales["new_membername"].ToString() ==  UpdateSales["new_membername"].ToString())
  {
     index = index + 1;
  }
}
UpdateSales["new_index"] = index + 1;
Service.Update(UpdateSales);

【问题讨论】:

  • 请编辑您的帖子,因为它不清楚,我不明白您的问题描述。

标签: dynamic dynamics-crm-2016


【解决方案1】:

您正在将属性的值显式转换为字符串,该字符串在属性集合中很可能不存在。检查返回的实体属性集合中是否存在名为 new_membername 的属性,或者使用 Microsoft.Xrm.Client 库中的帮助方法安全地获取属性值。

if (sales.GetAttributeValue<string>("new_membername") == 
    UpdateSales.GetAttributeValue<string>("new_membername"))
{
    index = index + 1;
}

您可能还想重新考虑您的比较逻辑,因为您最终可能会比较空值,我猜这可能不是您想要的。

【讨论】:

    猜你喜欢
    • 2021-07-08
    • 1970-01-01
    • 1970-01-01
    • 2019-09-21
    • 1970-01-01
    • 1970-01-01
    • 2021-10-02
    • 2021-08-23
    • 2021-04-04
    相关资源
    最近更新 更多