【问题标题】:ASP.NET Suitable way to check for database changesASP.NET 检查数据库更改的合适方法
【发布时间】:2020-10-07 01:28:16
【问题描述】:

我有一个 MySQL 数据库和 ASP.NET Web 应用程序项目,它们使用 Entity Framework 6 数据库优先方法连接。该项目是一个 CRUD 应用程序并使用 web api。这是get方法。

[HttpGet]
public IHttpActionResult getProducts()
{
    try
    {
        var prod = database.products.Select(x => new
        {
            product_id = x.product_id,
            name = x.name,
            image = x.image,
            original_price = x.original_price,
            original_GST = x.original_GST,
            photo_product = x.photo_product,
            visibility = x.visibility,
            quantity_constraint = x.quantity_constraint,
            description = x.description,
            pwp_price = x.pwp_price,
            pwp_GST = x.pwp_GST,
            updated_by = x.staff.name,
            updated_at = x.updated_at
        }
        ).ToList();
        return Ok(prod);
    }
    catch (Exception e)
    {
        return BadRequest(e.ToString());
    }
}

所以在 javascript 中,当页面加载时,我将调用一个使用 ajax 调用的函数来获取产品列表。问题是产品被其他项目插入,所以我想检查是否有任何产品插入数据库,然后对象将返回到视图页面。通过谷歌搜索,我发现了许多方法,例如使用 SQL Dependency、SignalR、Broker?而且我不确定要选择和学习哪个,因为我对这一切都很陌生。有没有更简单的方法来做到这一点?也许每 5 秒进行一次 ajax 调用,但只检索插入/更新的记录?

【问题讨论】:

    标签: asp.net asp.net-web-api entity-framework-6 asp.net-web-api2


    【解决方案1】:

    在setinterval上调用JS函数,每5秒触发一次。

     window.setInterval(function(){
          /// call your function here
        }, 5000);
    

    要停止循环,您可以使用

    clearInterval() 
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-05-17
      • 1970-01-01
      • 1970-01-01
      • 2016-11-28
      • 1970-01-01
      相关资源
      最近更新 更多