tfs - 如何检索 Azure DevOps Wiki 页面列表以进行编辑?
问题描述
我正在使用 .NET 客户端 API 来访问我们的 Azure DevOps 服务器。
如何检索 Wiki 页面列表,以便我可以编辑其内容并存储更改?
这是我到目前为止得到的:
using (WikiHttpClient client = new WikiHttpClient(App.ProjectUrl, new VssCredentials()))
{
using (Stream s = await client.GetPageTextAsync(ConfigurationManager.AppSettings["RepositoryContext"], ConfigurationManager.AppSettings["WikiPageName"]))
using (StreamReader sr = new StreamReader(s))
{
string text = sr.ReadToEnd();
}
}
我似乎无法找到正确的WikiPageName
,所以我需要一个项目所有 Wiki 页面的列表,以便能够枚举和检索页面的正确名称。
编辑
这是请求的屏幕截图:
这是使用的网址:
http://tfs.***.***.loc:8080/tfs/***Collection/******Manager-Plus/_wiki/wikis/******Manager-Plus.wiki?wikiVersion=GBwikiMaster&pagePath=%2FDM%252DRelease%C3%BCbersicht&pageId=6
这是我正在使用的值:
<add key="WikiPageName" value="DM-Releaseübersicht"/>
解决方案
您可以使用该方法获取 wikis 元数据GetAllWikisAsyc
,在结果中您将获得wikiIdentifier
在该方法中使用的GetPageTestAsync
。但是您需要页面路径,目前您无法使用 API 获取路径,您应该手动检查它(是 wiki 页面标题)并将其放入方法中:
var wikis = client.GetAllWikisAsync("Project").Result.
using (Stream S = client.GetPageTextAsync("Project", wikis[0].Id, path: "Test").Result)
{
using (StreamReader sr = new StreamReader(s))
{
string text = sr.ReadToEnd();
}
};
推荐阅读
- bootstrap-5 - 如何重置bootstrap 5 text-muted的效果
- powershell - 如何在 Powershell 中实现二进制哈希字符串的 Base64 URL 安全编码?
- r - 如何在 R 中按日期合并/堆叠观察结果
- react-native - 我如何使用反应原生日期时间选择器
- python - kivy 中的大量小部件 - 优化
- javascript - 模块解析失败:意外的令牌 (32:14) 在导入 api 库时使用这些加载程序处理了文件
- php - 我可以使用我的 php 应用程序在 Google 日历中添加事件吗?
- image - 在图像上测量和标记长度
- excel - Xldown 函数
- python - 检查整数列表中的元素的正值或负值