Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angular/30.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Angular 在.NET Core Web API中使用服务器发送事件监视表中的数据更新并刷新组件_Angular_Asp.net Web Api_.net Core_Asp.net Core Webapi_Server Sent Events - Fatal编程技术网

Angular 在.NET Core Web API中使用服务器发送事件监视表中的数据更新并刷新组件

Angular 在.NET Core Web API中使用服务器发送事件监视表中的数据更新并刷新组件,angular,asp.net-web-api,.net-core,asp.net-core-webapi,server-sent-events,Angular,Asp.net Web Api,.net Core,Asp.net Core Webapi,Server Sent Events,我试图在一个显示不同团队分数的角度组件上实现自动刷新。因此,每当分数更新时,我都需要刷新前端的分数 基于我前面的问题,我发现服务器发送的事件有助于实现此目的。但老实说,我一直在思考如何继续下去 这是我控制器中的更新代码,我想在更新代码时刷新分数。我还有一个get函数,可以读取所有的分数 // GET: api/TblVottings [HttpGet] public async Task<ActionResult<IEnumerable<TblVotti

我试图在一个显示不同团队分数的角度组件上实现自动刷新。因此,每当分数更新时,我都需要刷新前端的分数

基于我前面的问题,我发现服务器发送的事件有助于实现此目的。但老实说,我一直在思考如何继续下去

这是我控制器中的更新代码,我想在更新代码时刷新分数。我还有一个get函数,可以读取所有的分数

    // GET: api/TblVottings
    [HttpGet]
    public async Task<ActionResult<IEnumerable<TblVotting>>> GetTblVottings()
    {
        return await _context.TblVottings.ToListAsync();
    }


    // PUT: api/TblVottings/5
    // To protect from overposting attacks, see https://go.microsoft.com/fwlink/?linkid=2123754
    [HttpPut("{id}")]
    public async Task<IActionResult> PutTblVotting(int id, TblVotting tblVotting)
    {
        if (id != tblVotting.SessionId)
        {
            return BadRequest();
        }

        _context.Entry(tblVotting).State = EntityState.Modified;

        try
        {
            await _context.SaveChangesAsync();
        }
        catch (DbUpdateConcurrencyException)
        {
            if (!TblVottingExists(id))
            {
                return NotFound();
            }
            else
            {
                throw;
            }
        }

        return NoContent();
    }
//GET:api/TblVottings
[HttpGet]
公共异步任务,它给了我一些提示,但基于我的场景,我没有理解它


请建议如何实现这一点。

正如R.Richards和Feras Salim所说,我们建议您可以使用SignalR来处理此类需求

SignalR简化了向应用程序添加实时web功能的过程。实时web功能使服务器端代码能够立即将内容推送到客户端

通过使用signar,您可以编写一些代码,让服务器发送数据并调用客户端函数来实时更新页面

您可以在服务器端编写一些逻辑来监视数据库的更改,比如sql依赖关系和调用客户机sdie事件


有关如何将SignalR与angualr结合使用的更多详细信息,您可以参考此信息。

为什么不使用SignalR?