Узнайте имена всех атрибутов в сущности, возвращенной из CRM Dynamics
я попал на сервер, и я получил (надеюсь) правильный набор данных. Затем я попытался перечислить все компании по следующему коду.
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
или есть лучший способ?
2 ответов
Я думаю, что это следует сделать трюк.
foreach (Entity entity in result.Entities)
{
foreach (KeyValuePair<String, Object> attribute in entity.Attributes)
{
Console.WriteLine(attribute.Key + ": " + attribute.Value);
}
}
Это выполняет задачу с использованием лямбда-выражения.
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);
}