[英]Updating project parameters in AtTask using restsharp put method
我在與Attask的項目中有些掙扎。 我的目的是使用自定義表單數據來更新項目的alignmentValues。.我已經能夠創建新的對齊值以進行更新,但是我無法使用put方法來執行它。我要執行的請求是
PUT /attask/api/project/4c7...?updates=
{
alignmentValues: [
{
scoreCardOptionID: "2222...54d0",
scoreCardQuestionID : "8897...54d1",...
},....
]
}
我的代碼段是
var request = new RestRequest("project/{id}", Method.PUT);
request.AddUrlSegment("id", pid);
request.RequestFormat = DataFormat.Json;
JObject _putData = new JObject();
_putData.Add("alignmentValues",newAnswers);
對於更新對象,我嘗試了幾種組合
request.AddParameter("updates",_putData,ParameterType.RequestBody); //no effect
request.AddBody(new {name = "updates", value = _putData}); //no effect
通過這種主體方法,我什至無法更新項目名稱。 但是當我將參數作為查詢字符串提供時,它會成功更新名稱,但由於url太大而無法對齊值
var request = new RestRequest("project/{id}?updates=" + _putData , Method.PUT);
如果_putData很小的話,上面的方法就可以了...就像name =“ TEST” ..但是對於大的json數組失敗。
關於如何使用addbody / addobject / addjsonobject / addparameter更新值的任何建議...因為它的大小太大,所以我需要在正文中發送請求...
提前致謝。
好吧,這不是一個答案,但我是通過fluke使其工作的。.因此,主要問題仍然存在..我不能將主體與PUT請求一起使用..即使我使用它的顯示也沒有結果..所以我不得不去僅使用查詢字符串...現在,對於我在查詢字符串中的大參數問題,我正在發送整個alignmentvalues對象,在該對象中我只需要更新該對象中的兩個字段。 因此,在一種反復試驗的方法中,我只在對象中傳遞了三個字段-答案ID和兩個要更新的字段...而且它減小了查詢字符串的大小,幸運的是它對我有效。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.