Asp.NET return 向用户会话添加数据时的 ActionResult
Asp.NET return ActionResult while adding data to user session
我有一个类似的方法:
public ActionResult Index()
{
Session["test"] = GetData();
return View();
}
因为我的 GetData()
方法耗时太长,我想知道我是否可以做一些 async 以便 return View
而 GetData()
是 运行 并将对象添加到用户会话。
我已经考虑过将这个方法分成 2 个方法,第一个方法 return 'View()' 和第二个用 ajax 调用的方法,只是为了将对象添加到会话中,但我想使用这个作为最后的手段。
提前致谢!
Because my GetData() method takes too long, I was wondering if i can
do something async in order to return the View while GetData() is
running and adding the object to user session.
您绝对不希望 运行 在 初始页面加载 时进行长时间 运行ning 查询。用户可能会认为网络连接丢失,并不断按 F5 刷新页面。
相反,您需要两种操作方法 -
第一种操作方法returns常规视图。然后在客户端,您向操作方法 2 发出 Ajax 请求。
第二种操作方法returnsJSON响应
仅供参考: 您要确保第二个操作方法需要用户登录才能访问。否则,您可能会遇到 DDoS 攻击。
我有一个类似的方法:
public ActionResult Index()
{
Session["test"] = GetData();
return View();
}
因为我的 GetData()
方法耗时太长,我想知道我是否可以做一些 async 以便 return View
而 GetData()
是 运行 并将对象添加到用户会话。
我已经考虑过将这个方法分成 2 个方法,第一个方法 return 'View()' 和第二个用 ajax 调用的方法,只是为了将对象添加到会话中,但我想使用这个作为最后的手段。
提前致谢!
Because my GetData() method takes too long, I was wondering if i can do something async in order to return the View while GetData() is running and adding the object to user session.
您绝对不希望 运行 在 初始页面加载 时进行长时间 运行ning 查询。用户可能会认为网络连接丢失,并不断按 F5 刷新页面。
相反,您需要两种操作方法 -
第一种操作方法returns常规视图。然后在客户端,您向操作方法 2 发出 Ajax 请求。
第二种操作方法returnsJSON响应
仅供参考: 您要确保第二个操作方法需要用户登录才能访问。否则,您可能会遇到 DDoS 攻击。