gpt4 book ai didi

.net - 通过 Rally rest .net api 提交缺陷时如何设置自定义 WebLink 字段值?

转载 作者:行者123 更新时间:2023-12-02 00:23:34 25 4
gpt4 key购买 nike

我在 Rally 中为缺陷配置了一个自定义网络链接字段。我想使用 Rally rest .net api 相应地向 Rally 提交具有自定义 weblink 字段值的新缺陷。

不幸的是,weblink 实例需要 LinkID 和 DisplayString 值,我不知道如何启动 weblink 实例来设置缺陷字段。

我也曾尝试将 Rally rest .net api 支持的 DynamicJsonObject 设置到该字段,但它仍然失败。

调试截图 enter image description here

请帮忙!

已编辑:

我已经尝试使用如下示例代码发布缺陷:

        var api = new RallyRestApi("<myusername>", "<mypassword>", "https://community.rallydev.com");

var defect = new DynamicJsonObject();
defect["Name"] = "Sample Defect";
defect["Description"] = "Test posting defect with weblink type field";
defect["Project"] = "https://trial.rallydev.com/slm/webservice/1.29/project/5839639589.js";
defect["SubmittedBy"] = "https://trial.rallydev.com/slm/webservice/1.29/user/5797741589.js";
defect["ScheduleState"] = "In-Progress";
defect["State"] = "Open";
defect["Severity"] = "Major Problem";
defect["Priority"] = "High Attention";
defect["CustWebLink"] = new DynamicJsonObject(new Dictionary<string, object>
{
{"DisplayString", "abc"},
{"LinkID", "123"}
});

CreateResult creationResult = api.Create("defect", defect);

现在可以将缺陷发布到 Rally,但没有 CustWebLink 的值(value)。在调查过程中,我发现 CustWebLink 字段在发布请求的序列化中被忽略了。

  Rally.RestApi Post Response: {"CreateResult": {"_rallyAPIMajor": "1", "_rallyAPIMinor": "29", "Errors": [], "Warnings": ["Ignored JSON element defect.CustWebLink during processing of this request."],.....}

最佳答案

这相对简单,您只需为 Weblink 创建单独的 DynamicJsonObject,并为其 LinkID 和 DisplayString 属性赋值。然后,将 Weblink 对象指定为缺陷的字段。这是一个简单的例子:

    //Set our Workspace and Project scopings

String workspaceRef = "/workspace/5912034914";
String projectRef = "/project/5912035004";

DynamicJsonObject myDefect = new DynamicJsonObject();
DynamicJsonObject myWeblink = new DynamicJsonObject();

// Populate the Weblink
myWeblink["LinkID"] = "123456";
myWeblink["DisplayString"] = "External Image Link";

// Populate the Defect
myDefect["Name"] = "My Defect";
myDefect["Priority"] = "Normal";
myDefect["Workspace"] = workspaceRef;
myDefect["Project"] = projectRef;
myDefect["zWeblinkField"] = myWeblink;

CreateResult createDefect = restApi.Create("Defect", myDefect);

关于.net - 通过 Rally rest .net api 提交缺陷时如何设置自定义 WebLink 字段值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9922365/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com