我試圖每10秒向ASP.NET中的webApi控制器發出請求。控制器必須檢查數據庫(SQL Server)是否有新的數據可用(使用enitity框架)。這裏是控制器端減少ASP.NET控制器中查詢輪詢數據的次數
public class RemoteCommandController : ApiController
{
public Command Get(String id)
{
Command command = null;
ProxyCommand proxycommand = null;
Device deviceSearch;
using (var systemDB = new DB())
{
deviceSearch = systemDB.Devices.Include("CommandList").Where(d => d.Name.Equals(id)).SingleOrDefault();
command = deviceSearch.CommandList.LastOrDefault();
}
if (command.IsExecuted == false)
{
proxycommand = ConvertingObjects.FromCommandToProxy(command);
}
return proxycommand;
}
}
我想避免查詢數據庫每次我打電話給這個控制器。有沒有辦法改進這個控制器以減少查詢的數量? 我正在考慮使用Session,但我認爲這不是一個好主意...
你對緩存有什麼意思? – Daniele
我會設置[SignalR](https://www.asp.net/signalr/overview/getting-started/introduction-to-signalr) – Shoe