0

YouTrackSharp を使用して新しい問題を作成し、オンプレミスの追跡インスタンスに戻そうとしています。うまく検索できるので、接続と資格情報が機能していることがわかります。

に基づいて、ダイナミックとIssue()のインスタンス化の両方を試しました。

コンパイルに失敗する

dynamic issue = new Issue()
{
    type = "Question",
    summary = model.Summary,
    description = model.Description,
    projectShortName = "CSR",
};

このコードはコンパイルされますが、実行時にダイナミックを課題パラメーターに変換できません。

dynamic issue = new
{
    type = "Question",
    summary = model.Summary,
    description = model.Description,
    projectShortName = "CSR",
};
YouTrackIssueManager().CreateIssue(issue);
4

1 に答える 1

1

2.0 で変更された Breaking についてのgithub リポジトリで見つけた答えを見つけるには- そして、例の仕様を読むことについて話します。

抜粋:

問題は動的タイプになりました。これを使用するには、Issue を動的として宣言する必要があります。唯一の固定フィールドは「Id」です (ただし、後で他のフィールドが追加される可能性があります)。この理由は、課題のすべてのフィールドが基本的にカスタム フィールドであるという、YouTrack 自体の動作方法と一致するようになったためです。カスタム フィールドを好きなだけ多くまたは少なくすることができるようになりました。これは 2.0 での大きな変更であり、残念ながら既存のコードと互換性がありません。

うまくいった答え/コードは、Dynamic と new Issue() の組み合わせを使用したものです (これは私にとって新しい構文であり、現在さらに調べています)。

dynamic issue = new Issue();
issue.Type = "Question";
issue.Summary = model.Summary;
issue.Description = model.Description;
issue.ProjectShortName = "CSR";
YouTrackIssueManager().CreateIssue(issue);

このプロジェクトに取り組んでくれてありがとう@hhariri

于 2014-12-07T16:47:01.903 に答える