|
04.03.2009, 22:08 | #1 |
Участник
|
Имя объекта сущности по id
Как найти имя объекта по id?
Например есть сущность account id: 342nn-423423n4323-3n42 имя: ООО "Рога и копыта" - вот как найти это название? Дело в том, что сущность постоянно меняется (например, account, contact, email, product) - нужно написать универсальный код Думал найти "основной атрибут" сущности, но тоже не могу реализовать Гууглил - ничего не показало Помогите пожалуйста |
|
05.03.2009, 00:36 | #2 |
Moderator
|
У сущности есть не только id, но и тип (typecode or typename). Этих 2х атрибутов достаточно, чтобы прочитать объект. Имя любого системного объекта - атрибут name. Если хотите пущей универсальности, то можно воспользоваться metadata service для того, чтобы гарантировано правильно получить имя схемы основного атрибута. Прежде чем углубляться в код, хотелось бы узнать, для чего вам нужен такой функционал?
__________________
http://fixrm.wordpress.com, снятие/наведение порчи. Быстро, дорого, гарантия. MS Certified Dirty Magic Professional |
|
05.03.2009, 02:19 | #3 |
Участник
|
Цитата:
Цитата:
Если можно покажите пожалуйста как через metadata получить основной атрибут. Весь код приводить не буду, я делаю запрос возвращаю DynamicEntity, а с него id Код: foreach (DynamicEntity o in principalResponse.BusinessEntityCollection.BusinessEntities) { Guid generatingsiteid = new Guid(); for (int j = 0; j < o.Properties.Length; j++) { if (o.Properties[j].Name.ToLower() == entityname + "id") { CrmSev.KeyProperty keyp = (CrmSev.KeyProperty)o.Properties[j]; generatingsiteid = keyp.Value.Value; guidstr[m] = generatingsiteid; m++; break; } } } |
|
05.03.2009, 08:40 | #4 |
Moderator
|
Почитайте раздел Web Services: MetadataService. В сервисе есть сообщение RetrieveEntity, которое позволяет получить набор данных о сущности, включая PrimaryField.
И все же, для чего это вам нужно?
__________________
http://fixrm.wordpress.com, снятие/наведение порчи. Быстро, дорого, гарантия. MS Certified Dirty Magic Professional |
|