2
我在我的asp.net web API MVC 4中做了一個控制器動作,並且由於它的運行很長,我緩存了它的輸出5分鐘。然後讓.NET客戶端使用這個API。現在,我希望在緩存過期之前,應該在Web API中自動再次調用該操作。這樣每次它的客戶端獲得的緩存輸出。怎麼做? 是否有可能從Web API本身調用控制器操作,以便每次都獲得緩存或者我必須在ASP.NET客戶端中執行操作? 這裏是來自web api的動作。緩存在服務器上的結果,我使用Strathweb.CacheOutput 0.5.0
包定期在asp.net web API中調用控制器動作
[System.Web.Http.HttpGet]
[CacheOutput(ClientTimeSpan = 300, ServerTimeSpan = 300)]
public HttpResponseMessage givedisabledusers()
{
var result = dbh.givedisabledusers();
return Request.CreateResponse(HttpStatusCode.OK, result);
}
是的,我想要做同樣的事情。這個工作進程將在API,客戶端或它將是一個單獨的服務?你能更具體一點嗎? –
它不會在API中 - 它將在一個單獨的應用程序/服務。有很多選擇:1)你可以編寫一個小的控制檯應用程序,命中API端點並將其作爲預定作業運行。 2.)你可以編寫一個後臺服務,定期ping端點。 –