我有以下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上进行浏览器缓存的方向,但事实上它恰好在同一时间发生,而且我确实指出了这个方向...