2016-08-18 4 views
0

Привет я пытался получить address1_latitude и address1_longitude из CRM с помощью CRM SDK здесь мю кодaddress1_latitude и address1_longitude не получает от RetrieveMultiple

var querybyattribute11 = new QueryByAttribute("account"); 
querybyattribute11.ColumnSet = new ColumnSet("name", "address1_city", "statuscode", "address1_postalcode", "address1_latitude", "address1_longitude"); 
querybyattribute11.Attributes.AddRange("name"); 
querybyattribute11.Values.AddRange("ASSOCIATED COMBUSTION INC"); 
EntityCollection entities = service.RetrieveMultiple(querybyattribute11); 

foreach (Entity item in entities.Entities) 
{ 

    // Console.WriteLine("Name: {0}. Id: {1}", role.Name, role.Id); 
    list += item.Attributes["name"].ToString() + " " + item.Attributes["address1_longitude"] .ToString() + "\n"; 
} 

Но я не адресности это item.Attributes["address1_longitude"] сообщение об ошибке

'The given key was not present in the dictionary.' 
+0

При отладке ли объекты содержат этот столбец или это нуль? – sr28

+0

Да нет атрибута, присутствующего в этом адресе1_longitude name –

+0

Я не написал такой запрос. Обычно я делал бы что-то вроде этого: https://msdn.microsoft.com/en-us/library/gg328149.aspx. Однако, я думаю, это потому, что вы не добавляете его в свой диапазон атрибутов, как вы делали с «именем». – sr28

ответ

1

Возможно, это потому, что оно равно нулю.

Попробуйте либо один из этих 2-х вариантов:

item["address1_longitude"] (shouldn't raise exception, it would return null if blank, otherwise the address longitude) 

Чтобы проверить, если столбец существует:

item.Attributes.ContainsKey("address1_longitude") 
+0

Привет, мне действительно нужно получить 'address1_longitude' для отображения в моем проекте, не хотите проверять, является ли поле null или нет. Спасибо за вашу помощь . Есть ли причина, по которой широта и долгота становятся нулевыми? –

+0

Это пустое место, когда в основном пусто. Он не обязательно должен иметь значение – Jordi

 Смежные вопросы

  • Нет связанных вопросов^_^