你得检查下你登录跳转时给了啥参数。
return user.Usertype == 4
? RedirectToAction("Index", "Organization")
: RedirectToAction("Index", "Home");
这个是登录逻辑完成后跳转页面的代码! 应该没问题的吧!
@李轩: 拿 Fiddler 抓一下从登录到跳转到 Organization 首页的包。
从你给出的 RedirectToAction("Index", "Organization") 来看,IE 地址栏应该显示为:
http://edu.9158.com/manager/Organization
@Launcher:
上面的图是登录请求的。
==========================================================
这个是登录成功后跳转请求的
@李轩: 你的 Organization Controller 的 Index 方法是带参数的吗?
@Launcher: 恩
@Launcher:
@李轩: 那就对了,因为使用 Get 请求,你给了个 Page(复杂类型) 参数,Asp.Net 会给你编码后放置在 Url 上。你可以尝试把 Page 修改为简单类型,比如:
public ActionResult Index(string userName,string pageName);
@Launcher: 试过了! 还是不行!
@李轩: 不行,可能是因为你 RedirectToAction 没用对,参照下面两篇文章,如何在重定向时传递参数:
这个难道是session高出来的?
应该不是吧! 我其他浏览器使用的好的啊!
问题解决了!只要在 config里改下cookie的使用策略就好了!
加如下一句
<authentication mode="Forms">
<forms cookieless="UseCookies" />
</authentication>
正解!