如果您尝试从另一个域访问站点方法,TempData 是否存储信息?

Does TempData store information if you try to access site methods from another domain?

我有一个 mvc.net 项目,效果很好。

我将此项目用作获取数据、过滤数据并发回 JSON 的过滤器。

对该项目的调用示例如下:

public ActionResult GetSomeData( )
{
    var data = new List<HelloWorld> ();
    TempData["imageData"] = data; // get data, filter it and send back part of it and save the rest in "TEMPDATA"

    var retunrdtd = new {Success = "hello world"};

    return new JsonResult {Data = filteredData, JsonRequestBehavior = JsonRequestBehavior.AllowGet};

}

我过滤了数据,因为数据量可能很大,所以我发回了 100 个列表项,而不是全部 10000 个。如果我还想要 100 个,我调用一个方法来检查临时数据是否存在并获取剩余的来自 tempdata 的 9900 并给我另外 100 等等

我正在考虑创建一个单独的网站 api,它将位于另一个域中。 我想调用我当前项目中的方法,例如:

www.myFilterMvcDotNet.com/home/GetSomeData

但是我不确定一旦我获得前 100 个列表项,临时数据是否会保留任何值。所以我的问题很简单,对吗?如果不是,跟踪已接收数据和剩余数据的最佳方法是什么?

I filter the data since the amount of data can be large so i send back lets say 100 listitems instead of all 10000. if i want a 100 more i call a method that checks if the tempdata exists and takes the remaining 9900 from tempdata and gives me another 100 etc.

TempData 未用于您要执行的操作。 TempData 就像一个 ViewBag ,与后者的唯一区别是 TempData 在重定向和里面的数据都清楚

要解决您的问题,您可以查看 How to use Session in ASP.Net MVC ?