2016-12-14 4 views
1

Я новичок в Podio и потребляю Podio API в C# .net. Я могу получить коллекции предметов, создать элемент с помощью API и веб-узлов в .Net. Но я застрял на обновлении элемента. Я использую webhook по обновлению товара ITEMX. Обновите. Но я получаю ошибку при обновлении элемента.Обновление элемента Podio с использованием API Podio в C# .Net

Хотя испытание я пытался,

  • Чтобы присвоить новые значения полей.
  • Просто неправдоподобное элемент, используя ItemId и сразу же называется метода ItemUpdate() без каких-либо изменений в извлеченный пункт

Но все еще получает ошибку. Последнее предложение сообщение об ошибке говорит:

"\\" \\ item_id ": 99999999, \\" \\ редакция ": 0} (объект): должно быть целым числом \", \ "запрос \" : {\ "URL \": \ "http://api.podio.com/item/9999999 \", \ "query_string \": \ "\", \ "метод \": \ "PUT \"}} "}

Я пробовал много вещей, и реферируемых много документации, но не нашли решение. Может кто-то пожалуйста, помогите, чтобы это было сделано?

'

public static async Task<int> UpdateCalculationsInGMApp(int appItemId) 
{ 
    //Get related GMApp 

    try 
    { 
     var _Podio = new Podio(Helper.ApiClientId, Helper.ClientSecret); 
     AppMaster Ratesapp = Helper.GetAppToken("Costing Rates", "VikramTestWS"); 
     await _Podio.AuthenticateWithApp(Ratesapp.AppId, Ratesapp.Token); 

     Item ratesPodioItem = await _Podio.ItemService.GetItem(appItemId); 
//Item fetched successfully here 
     //thentried to set one of the field with new value. Later on commented and tested but didn't worked 
     //var pm_Rate = ratesPodioItem.Field<NumericItemField>("pm-rate"); 
     //pm_Rate.Value = 100; 

     try 
     { 
      int x = (int)await _Podio.ItemService.UpdateItem(ratesPodioItem, null, null, true, true); 
     } 
     catch (Exception excp) 
     { 
      Logger.AddToLog(DateTime.Now, excp.Message, "Error: updating podio item" + ratesPodioItem.ItemId.ToString()); 
     } 
    } 
}' 
+0

Можете ли вы указать исходный код (без каких-либо токенов доступа и логинов/паролей курса), так что будет легче понять, что пошло не так? –

ответ

3

Возможно, вы использовали объект выбранного объекта, чтобы обновить его до Podio. Это не будет работать. Вам нужно создать новый объект Item и выполнить задание обновления. См. Документацию здесь: http://podio.github.io/podio-dotnet/items/

+0

Эй, Аймаль, Большое спасибо. Ты прав. Нам нужно обновить весь новый элемент. Это сработало !!!!! –

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