c# - 如何使用 api c# 从简单的 redmine 中获取所有未解决的问题
问题描述
var baseAddress = new Uri("http://www.easyredmine.com/");
using (var httpClient = new HttpClient { BaseAddress = baseAddress })
{
using (var response = await httpClient.GetAsync("issues/{id}.xml{?include}"))
{
string responseData = await response.Content.ReadAsStringAsync();
}
}
解决方案
在此链接中,您可以找到 Redmine 的 API 文档: https ://easyredmine.docs.apiary.io/
但是,您可以使用此 url 获取所有问题列表: http ://www.easyredmine.com/issues.xml
您必须创建模型以映射调用结果,然后使用 linq 您可以过滤获得的对象列表。
响应模型是这样的:
<issues total_count="1" offset="0" limit="25" type="array">
<issue>
<id>765</id>
<project id="71" name="Administration"/>
<tracker id="13" name="Other"/>
<status id="1" name="Planned"/>
<priority id="12" name="High"/>
<author id="5" name="Andrew Smith"/>
<assigned_to id="5" name="Andrew Smith"/>
<subject>issue subject</subject>
<description>
issue description
</description>
<start_date>2014-04-11</start_date>
<due_date>2014-04-11</due_date>
<done_ratio>0</done_ratio>
<estimated_hours>1.0</estimated_hours>
<easy_email_to>test@test.com</easy_email_to>
<easy_email_cc>test@test.com</easy_email_cc>
<created_on>2014-04-11T08:24:47Z</created_on>
<updated_on>2014-04-11T08:24:47Z</updated_on>
<closed_on/>
<sprint id="1" name="Sprint" due_date="2014-04-11"></sprint>
</issue>
</issues>
我认为您必须过滤“状态”字段
推荐阅读
- tensorflow - 如何保存具有常量的自定义层的 keras 模型?
- javascript - 允许从 url 读取 Angular 中的特殊字符
- scapy - 警告:发送 ipv6 数据包时未找到到达目的地的 Mac 地址
- javascript - Rails 6:通过 Webpacker 包含 3rd Party Yarn 库
- c++ - 具有模板模板参数的类的专业化在clang中但在gcc中不起作用
- python - 在 python 中以 w+b 模式解压
- mysql - 在 SQL Server 中创建一个每天执行一个过程的 cron 作业
- ios - 快速样式搜索栏最小取消按钮和地平线左侧
- python - 在pygame中扩大窗口导致滞后
- error-handling - 如何修复 Apollo-link 中针对 GraphQL 错误的错误