如何在list.redirect中将列表作为参数传递

时间:2012-05-30 15:48:04

标签: c# jquery asp.net

Prob1:我有2个列表,我想在下一页中访问,我将重定向。 目前的结果,  当我传递结果时,在url中显示List数据类型。

ex:System.Collections.Generic.List1[IDataEntities.ISearchResultsEntity]

Prob2:我在ajax帖子中有一个方法调用,我能够导航到该方法,但在内部我已经完成了response.redirect,但没有说“Threadabort exception”

3 个答案:

答案 0 :(得分:2)

使用Session保存您的列表,如下所示

Session["mylist"] = list;

您可以从下一页访问它,还有很多其他方法。请查看此link

当您致电Response.Redirect时,请将其称为

Response.Redirect(url, false);
Context.ApplicationInstance.CompleteRequest();

但是不要从服务器端对ajax调用进行重定向,ajax调用完成后你可以从客户端调用重定向。

关于成功ajax回调方法

window.location = '[url to redirect]';

答案 1 :(得分:2)

问题1:您需要用逗号分隔列表值。需要更多信息来为您提供确切的代码,因为我不知道这是asp.net或asp.net mvc还是别的。如果,例如,这是重定向到asp.net mvc中的另一个动作,你的接收器动作参数需要是一个List,你重定向到/ Receiver?param1 = value1,value2,value3 ......

希望能回答你的问题

问题2:无法从ajax请求重定向。需要返回特殊内容并在前端处理它。

答案 2 :(得分:0)

Prob1。将公共属性添加到类型为List<Class>的当前页面。在下一页(redirect()的目标页面)上,在ASPX文件中添加prevoiusPageType标记。现在您可以访问Page.PreviousPage.ListToAccess。

Prob2。将false添加为param以进行重定向,例如Response.Redirect("<URL-of-target-page", false);