我目前有這個回圈:
if (lists.Date.Count() == 0)
{
message = "There Have Been No Merged Pull Requests In This Repository";
}
else
{
for (int i = 0; i < lists.Date.Count(); i )
PullRequests = new List<PullRequestDetails>
{
new PullRequestDetails()
{
Title = lists.ShortRequestTitle[i],
Name = lists.Name[i],
Date = lists.Date[i],
CommitLink = lists.ShortCommitList[i],
},
};
}
它從串列中獲取字串并將它們設定在此模型中:
public class PullRequestDetails
{
public string? Title { get; set; }
public string? Name { get; set; }
public string? Date { get; set; }
public string? CommitLink { get; set; }
}
我希望我的 HTML 在單擊按鈕時顯示串列中的每個專案,但目前它只顯示串列中的最后一個專案:
@if (Model.PullRequests != null)
{
@foreach (var requests in Model.PullRequests)
{
<tbody>
<tr>
<td>@requests.Title</td>
<td>@requests.Name</td>
<td>@requests.Date</td>
<td><a href=@requests.CommitLink target="_blank"> Link </a></td>
</tr>
</tbody>
}
}
這在我手動添加串列的每個值時有效,但是當每個串列中的值少于或多于 4 個時(在大多數情況下存在),他會給出超出范圍的例外:
if (lists.Date.Count() == 0)
{
html = "There Have Been No Merged Pull Requests In This Repository";
}
else
{
for (int i = 0; i < lists.Date.Count(); i )
PullRequests = new List<PullRequestDetails>
{
new PullRequestDetails()
{
Title = lists.ShortRequestTitle[0],
Name = lists.Name[0],
Date = lists.Date[0],
CommitLink = lists.ShortCommitList[0]
},
new PullRequestDetails()
{
Title = lists.ShortRequestTitle[1],
Name = lists.Name[1],
Date = lists.Date[1],
CommitLink = lists.ShortCommitList[1]
},
new PullRequestDetails()
{
Title = lists.ShortRequestTitle[2],
Name = lists.Name[2],
Date = lists.Date[2],
CommitLink = lists.ShortCommitList[2]
},
new PullRequestDetails()
{
Title = lists.ShortRequestTitle[3],
Name = lists.Name[3],
Date = lists.Date[3],
CommitLink = lists.ShortCommitList[3]
},
};
}
那么我怎樣才能用回圈來解決這個問題呢?
uj5u.com熱心網友回復:
正如@Camilo Terevinto 所說,您也需要將 List 實體化排除在回圈之外
if (lists.Date.Count() == 0)
{
message = "There Have Been No Merged Pull Requests In This Repository";
}
else
{
PullRequests = new List<PullRequestDetails>();
for (int i = 0; i < lists.Date.Count(); i )
{
PullRequests.Add(new PullRequestDetails()
{
Title = lists.ShortRequestTitle[i],
Name = lists.Name[i],
Date = lists.Date[i],
CommitLink = lists.ShortCommitList[i]
});
};
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/457462.html
上一篇:按字母順序排序串列然后升序
下一篇:通過字串獲取類并呼叫它的方法
