angularjs中的进度条显示

时间:2017-03-19 10:58:50

标签: c# angularjs asp.net-web-api

我有一个web api服务器,计数为1到100,线程休眠一秒。

// Prepare the test array (this is done before entering the counting loop)
Random rnd = new Random();
int[] array = new int[100]; // 100 or whatever....
for (int i = 0; i < array.Length; i++)
    array[i] = rnd.Next(1, 101);  // 1-100 range

// The max occurences of a number
int maxOccurence = 0;
// The number with the max occurences
int currentMax = 0;

// One bigger to accomodate the 100....
int[] occurrences = new int[array.Length + 1];

// Loop and check on the test array
for (int a = 0; a < array.Length; a++)
{
    // The current number to examine
    int number = array[a];

    // Increment the occurences counter for the number
    occurrences[number]++;

    // Check if we have a new max....
    if (occurrences[number] > maxOccurence)
    {
        // Save the new leader, both the new max occurence and number 
        maxOccurence = occurrences[number];
        currentMax = number;
    }
}

Console.WriteLine(maxOccurence);
Console.WriteLine(currentMax);

我想在Angularjs中每秒显示count的值。(作为进度条) 我可以用于此异步任务吗?我应该将计数值从web api推送到angularjs吗?它是如何工作的?

1 个答案:

答案 0 :(得分:2)

我很确定我昨天在你的另一个帐户上给了你这个答案,但为了你的方便,我会在这里重复一个简短的版本。

通过单独使用这些框架,您无法将消息从ASP.NET Web Api推送到角度。如果Angular需要来自服务器的数据,Angular需要从服务器请求此数据。如果要将消息从服​​务器推送到客户端,则需要使用SignalR或Websockets之类的东西。如果您不想使用它们,则必须在Angular中设置定期计时器,例如通过使用JavaScripts setInterval() - 方法,您有角度从web api请求当前计数。