【问题标题】:Find out the names of all the attributes in an entity returned from CRM Dynamics找出从 CRM Dynamics 返回的实体中所有属性的名称
【发布时间】:2012-09-06 08:51:02
【问题描述】:

我进入了服务器,并且(希望)检索到了正确的数据集。然后,我尝试通过以下代码列出所有公司。

EntityCollection result = proxy.RetrieveMultiple(expression);
foreach (var entity in result.Entities)
{
  String output = String.Empty;
  if (entity.Attributes.Contains("account"))
    output = entity.Attributes["account"].ToString();
}

但是,最好运行一个遍历result.Entities 中所有可用属性的内部循环。我应该使用entity.Attributes.Keys还是有更好的方法?

【问题讨论】:

    标签: c# dynamics-crm


    【解决方案1】:

    我认为这应该可以解决问题。

    foreach (Entity entity in result.Entities)
    {
        foreach (KeyValuePair<String, Object> attribute in entity.Attributes)
        {
            Console.WriteLine(attribute.Key + ": " + attribute.Value);
        }
    } 
    

    【讨论】:

    • 好的,所以我在正确的轨道上。我担心从 Dynamics 获得的实体推荐会以不同的方式处理。我还对您的示例做了一些小改动。
    【解决方案2】:

    这使用 Lambda 表达式执行任务。

    EntityCollection result = proxy.RetrieveMultiple(expression);
    foreach (var entity in result.Entities)
    {
        var vsHeaders = entity.Attributes.Select(kvp => string.Format("{0}", kvp.Key));
        string sHeaders = string.Join(",", vsHeaders);
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-10-22
      • 1970-01-01
      • 1970-01-01
      • 2019-10-27
      • 1970-01-01
      相关资源
      最近更新 更多