我有两个 Blazor 组件。第一个组件仅显示来自 JSON api 的学生列表
<select @onchange="selectStudent">
@foreach(var student in students) {
<option value="@student.id"> @student.name /option>
}
</select>
@code {
var API = "https://abcd.com/students/"
students = // variable stores JSON data of students used in the foreach loop
// sending select event to parent
[Parameter]
public EventCallBack<string> OnStudentSelect { get; set; }
public async Task SelectStudent(ChangeEventArgs e) {
await OnStudentSelect.InvokeAsync(e.Value.ToString())
}
}
Run Code Online (Sandbox Code Playgroud)
当用户从下拉列表中选择学生时,我想捕获 Student.id 并将其作为参数发送到另一个组件
@page "/student"
<Students OnStudentSelect="@GetStudentId"> </Students>
<p> Displaying profile of StudentID: @studentId </p>
<Student StudentId="@StudentId"> …Run Code Online (Sandbox Code Playgroud) 我遇到这个问题已经有一段时间了,为了重现该错误,我创建了一个新的 Blazor 项目来向您显示所有文件。
这是我的index.razor文件:
@using BlazorApp1.Models.TestSuiteModel;
@inject BlazorApp1.Services.TestSuiteService TestSuiteServ;
@page "/"
<b>
@TestSuitesResult.count;
</b>
@code {
protected override async Task OnInitializedAsync()
{
this.GetTestSuites();
}
TestSuiteModel TestSuitesResult;
protected async Task GetTestSuites()
{
TestSuiteServ.url = "https://dev.azure.com/****/_apis/test/Plans/12/suites?api-version=5.0";
TestSuiteServ.PersonalAccessToken = "****";
TestSuitesResult = await TestSuiteServ.GetTestSuites();
await base.OnInitializedAsync();
}
}
Run Code Online (Sandbox Code Playgroud)
问题是@TestSuitesResult.count;始终为空并引发此错误:

下面是我的模型
namespace BlazorApp1.Models.TestSuiteModel
{
public class TestSuiteModel
{
public List<Value> value { get; set; }
public int count { get; set; }
}
// .. mode classes
}
Run Code Online (Sandbox Code Playgroud)
以下是我的服务
using …Run Code Online (Sandbox Code Playgroud) 我试图列出与工作项关联的所有拉取请求,但根据工作项 API,似乎没有办法获取它:
GET https://dev.azure.com/{org}/{project}/_apis/build/builds/123456/workitems?api-version=6.0
Run Code Online (Sandbox Code Playgroud)
上面返回工作项列表,例如:
{
"count": 40,
"value": [
{
"id": "156267",
"url": "https://dev.azure.com/xxx/_apis/wit/workItems/12345"
},
...
]
}
Run Code Online (Sandbox Code Playgroud)
现在,如果我仍然决定查询每个返回的工作项,我仍然看不到拉取请求。例如:
GET https://dev.azure.com/xxx/_apis/wit/workItems/12345
Run Code Online (Sandbox Code Playgroud)
上面返回一个关于对工作项进行的更新的 JSON 对象,但这可以是提交、状态更新或注释。
有没有办法获取每个工作项目的 PR 列表?
谢谢
azure-api-management azure-api-apps azure-devops azure-devops-rest-api