localhost页面无效。 localhost重定向了你太多次了

时间:2016-03-17 08:43:44

标签: asp.net asp.net-mvc-4 c#-4.0

调试我的MVC程序时遇到问题,我想访问名为" UserActivity"的数据库。 在浏览器上,它说"本地主页不起作用

localhost重定向了你太多次了。"

但没有显示具体的错误位置。

这是我的UserActivtyController,GET / UserActivity / Index code:

public class UserActivityController : BaseController
{
    //GET /UserActivity/Index
    public ActionResult Index(string returnUrl, int page = 1, string sort = "Id", string sortDir = "ASC", string filter = null)
    {
        String query = @"
            SELECT Id
            ,CreatedBy
            ,CreatedOn
            ,ModifiedBy
            ,ModifiedOn
            ,ContactId
            ,EntityName
            ,EntityId
            ,ActivityType
            ,ActivityStatus
            ,DueDate
            ,ActualEndDate
            ,MasqueradeOn
            ,MasqueradeBy 
        FROM UserActivity 
        -- ORDER BY CreatedOn DESC
        -- OFFSET (@PageNumber -1) * 30 ROWS
        -- FETCH NEXT 30 ROWS ONLY
            ";

        //string countQuery = @""

        List<UserActivityModels> userActivity = null;

        using (IDbConnection db = new MySqlConnection(ConfigurationManager.ConnectionStrings["CRMPORTALSQLCONN"].ConnectionString))
        {
            userActivity = (List<UserActivityModels>)db.Query<UserActivityModels>(query, new
            {
                @PageNumber = page,

            });

            /*ViewData["TotalCount"] = (int)db.ExecuteScalar(countQuery, new
            {
                @PageNumber = page,
                @Id = string.IsNullOrEmpty(filter) ? null : filter
            });
            */

            ViewData["PageSize"] = 30;
            ViewData["Filter"] = filter;
        }

        if (userActivity != null)
        {
            return RedirectToAction(returnUrl);
        }

        return View(userActivity);
    }
}

真的很感激是否有人知道这个问题。感谢

3 个答案:

答案 0 :(得分:4)

if (userActivity != null)
{
    return RedirectToAction(returnUrl);
}

如果returnUrl指向相同的操作(“UserActivity / Index”),它将创建无限重定向循环。如果要将请求重定向到不同的操作,请确保传递正确的名称。

答案 1 :(得分:1)

你有回环的情况。这类似于无尽的while循环。要修复它,请更改代码重定向实现以重定向到操作方法。请注意我如何更改下面的实现。这将解决问题&#34; localhost重定向你太多次&#34;。您可以对其进行改进,以支持适合您情况的传递参数等。另请查看RedirectToAction并支持其他参数,如果要将参数传递给操作方法,此链接将非常有用。

    public class UserActivityController : BaseController
    {
        //GET /UserActivity/Index
        public ActionResult Index(int page = 1, string sort = "Id", string sortDir = "ASC", string filter = null)
        {
            // Your other implementation here. I have removed it for brevity.

            if (userActivity != null)
            {
                return RedirectToAction("Index");
            }

            return View(userActivity);
        }

        public ActionResult Index()
        {

          return View();
        }
   }

答案 2 :(得分:0)

我不知道redirectUrl的价值是什么,但我认为它是空的。我还假设您的userActivity不是null。所以return RedirectToAction(returnUrl);被调用。

当您致电RedirectToAction(null)时,您实际上会重定向到相同的操作,一切都会重复。

我也想知道为什么在return View(userActivity);userActivity时你需要null。我想你有一个逻辑错误。

相关问题