ASP.NET MVC获得了经常性的请求,即使没有人在制作它们

时间:2017-02-10 11:12:55

标签: asp.net-mvc multithreading

我有以下ASP.NET MVC页面:https://domain.azurewebsites.net/Request/Index/?email=foo@bar.com

在调用此页面后,我在后台准备访问者会话(它主要是将来自其他来源的数据导入到用于此项目的数据库中),同时我向他们展示了一个简单的页面&# 34;你的会议正在准备中#34;用户可以随时关闭。准备工作完成后,我会向请求者发送一封电子邮件,其中包含指向其唯一会话的链接(如果此电子邮件的会话尚未存在,则为新链接,或指向现有会话的链接)。

这很简单:

 public ActionResult Index(string email)
 {
        //some email and other validation
        System.Threading.Thread tr = new System.Threading.Thread(new System.Threading.ThreadStart(CreateSession));
        tr.Start();

        return View();
 }

当人们调用此页面时,我将该条目记录到我们的日志记录数据库中。我也会在准备工作成功(并发送电子邮件)时记录。

现在我收到了一位用户的投诉,他收到的邮件每天都会收到一个链接到他唯一会话的邮件,几乎总是在同一时间,而不是打电话给页面,从而请求他的链接。事实上,无论是在我们的日志记录还是用于发送链接的邮箱中,我都可以看到他的电子邮件在这个用户声明的时间内发出了请求,而且我在日志记录中也看到了每个请求,准备工作顺利完成。

有没有人知道如何调用此页面,即使没有人调用它,以及我如何解决这个问题?我正在考虑在用户PC上进行浏览器缓存的方向,但事实上它恰好在同一时间发生,而且我确实指出了这个方向...

0 个答案:

没有答案