对于多个并发用户,在TempData中存储值是否安全?

sap*_*api 5 c# asp.net-mvc razor

我一直在使用TempData在页面请求之间保留我的模型,否则我将无法访问我需要的模型中的类的特定属性.

(这是一个轻微的题外话和简化,但基本上我有一个具有.name和.active属性的对象列表.我有一个CheckBoxFor .active属性,并且保留,但.name属性设置为null提交表单时;我也需要访问该属性,所以我一直在TempData中存储旧模型,然后在需要时复制该属性.有没有更好的方法呢?我很惊讶我正在使用的对象的属性将被取消.)

当用户选中复选框时,模型存储在TempData中,从而提交表单.当用户单击按钮时,稍后会读取TempData.(没有干预请求.)

以这种方式使用TempData对多个用户安全吗?换句话说,每个客户端是否都有自己的TempData副本?我担心的情况大致如下:

  1. 用户1单击复选框,将其模型保存到TempData
  2. 用户2单击复选框,将她的模型保存到TempData
  3. 用户1单击按钮,提交表单并从TempData读取模型

我不确定的是用户1将获得哪种型号.有人可以请我加油吗?

Dan*_*ite 8

TempData是会话绑定的.用户1只能看到它的TempData.