我有两种方法的控制器。第一种方法应该设置变量并做一些事情。第二种方法(由ajax调用)应该获得此变量的值。所以,我不能使用TempData和Cache(因为有2个不同的请求)。怎么解决?使用Session?但是在asp.net mvc中默认禁用会话,如果我启用它,我害怕整个应用程序出现意外行为......全局变量也不被批准(因为我需要获取变量的值)用户)
编辑: 工作流程是:
因此,在Cancel方法中,我需要知道正在上传的文件的唯一名称。我必须在任何存储(即Redis,DB等)中将此名称存储在Upload方法中,并在上传成功后从该存储中删除(或者在Cancel方法中,如果调用了Cancel)
答案 0 :(得分:2)
如果数据不敏感,我建议将该值保存在该用户的cookie中。
如果数据敏感,则需要存储,例如存储在服务器的缓存中。在那里,您保留每个用户的记录,然后重复使用并在完成处理后将其丢弃。当您拥有一个网站实例时,这种方法很有效。如果不这样做,你应该看一下例如redis缓存,sql server,azure table storage,......