0

我需要使用 c# 中 REST API 的创建或更新请求为史诗或父(任何参考)字段设置服务用户故事类型的值。我尝试使用 c# 类将史诗字段的链接和值设置为 JSON 对象。

storyObj.epic.link="https://<companyname>.service-now.com/api/now/table/rm_epic/{sys_id}";    storyObj.epic.value= "{sys_id}";

用户故事是使用空白史诗或父字段创建的。史诗在我的课堂上是这样宣布的-

 public Epic epic { get; set; } public class Epic
{
    public string link { get; set; }
    public string value { get; set; }
 }

但是当我设置它的值时,它就像这样 -

"epic": { "link": "https://company.service-now.com/api/now/table/rm_epic/{value=d385c54adbb5bb00f493894d0", "value": "{value=d385c54adbb5bb00f493894d0" },

4

1 回答 1

1

我将 c# 对象格式(用于 json 覆盖)更改为所有字符串属性。

public string epic { get; set; }  
public string parent { get; set; }
public string shadow { get; set; }
public string watch_list { get; set; }
public string phase_type { get; set; } 
...............

然后对于 post 或 put 请求到 servicenow 我正在传递附加参数以返回所有字符串中的 json 响应。

HttpClient httpClient = ContectToServiceNow();
var content = new StringContent(json.ToString(), UnicodeEncoding.UTF8, 
"application/json");
response = httpClient.PostAsync("api/now/table/" + tableName + "? 
sysparm_exclude_reference_link=true", content).Result;

所以现在在更新 sys_id 时,我可以直接将 sys_id 从 service now 分配给任何参考字段,例如 epic = sys_id;

于 2019-06-11T06:51:24.647 回答