我正在尝试使用YouTrackSharp创建一个新问题,回到我跟踪实例的内部部署。我可以搜索得很好,所以我知道我的Connection和Credentials正在运行。
基于example我尝试了动态,以及实例化一个Issue()。
无法编译
dynamic issue = new Issue()
{
type = "Question",
summary = model.Summary,
description = model.Description,
projectShortName = "CSR",
};
此代码编译,但在运行时失败以将动态转换为Issue param,异常为'strong>'YouTrackSharp.Issues.IssueManagement.CreateIssue(YouTrackSharp.Issues.Issue)的最佳重载方法匹配'有一些无效的参数
dynamic issue = new
{
type = "Question",
summary = model.Summary,
description = model.Description,
projectShortName = "CSR",
};
YouTrackIssueManager().CreateIssue(issue);
答案 0 :(得分:1)
找到答案我在github repo上找到了关于2.0中的更改的更改 - 然后继续讨论reading the specs的示例。
Exerpt:
问题现在是动态类型。要使用它,您需要声明一个 问题是动态的。它唯一固定的字段是“Id”(虽然稍后 可能会添加其他一些)。这样做的原因是它现在 内联YouTrack的工作原理,即每个领域 问题基本上是一个自定义字段。你现在可以拥有尽可能多的 你喜欢的小自定义字段!这是2.0和2.0的重大变化 不幸的是,它与现有代码不兼容。
有效的答案/代码是,结合使用动态和新问题()(对我来说这是新语法,我现在正在深入研究)。
dynamic issue = new Issue();
issue.Type = "Question";
issue.Summary = model.Summary;
issue.Description = model.Description;
issue.ProjectShortName = "CSR";
YouTrackIssueManager().CreateIssue(issue);
感谢您@hhariri就此项目所做的工作。