由于我需要通過不停的重復宣告來獲得資料庫中的最新資料。我想通過設定計時器來實作我的目標。我目前的想法是使用這種方式,但這不起作用。
有人可以給我建議嗎?
var timer = new PeriodicTimer(TimeSpan.FromSeconds(10));
while (await timer.WaitForNextTickAsync())
{
double H = Model.LastOrDefault().Ax;
double V = Model.LastOrDefault().Ay;
}
uj5u.com熱心網友回復:
我假設您希望在不在回圈H中的代碼中使用變數。Vwhile
在代碼中:
var timer = new PeriodicTimer(TimeSpan.FromSeconds(10));
while (await timer.WaitForNextTickAsync())
{
double H = Model.LastOrDefault().Ax;
double V = Model.LastOrDefault().Ay;
}
H并且V只在while回圈的范圍內,因此只能在其中使用。換句話說,它們是while回圈本地的,而不是回圈之外的,例如:
while (await timer.WaitForNextTickAsync())
{
double H = Model.LastOrDefault().Ax;
double V = Model.LastOrDefault().Ay;
double Sum = H V; // okay
}
double Sub = H-V;//Not possible as H & V are out of scope being local to the while loop
如果您希望在其他地方使用它們H,V則必須在它們仍在您希望使用它們的范圍(可訪問)之類的地方宣告它們。
var timer = new PeriodicTimer(TimeSpan.FromSeconds(10));
double H=0.0;
double V=0.0;
while (await timer.WaitForNextTickAsync())
{
H = Model.LastOrDefault().Ax;
V = Model.LastOrDefault().Ay;
double Sum = H V; // okay
}
double Sub = H-V;//okay as well
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/426928.html
