MVC路由问题?

mjfei 2010-11-03 06:10:18
正在开始学习MVC,能列表显示出数据,现在我想分页的时候老是出错。。。
Master文件中:

<div id="menucontainer">

<ul id="menu">
<li><%= Html.ActionLink("Home", "Index", "Home")%></li>
<li><%=Html.RouteLink("My Order", "NewOrders", new { pageIndex = 0 })%></li>
<li><%= Html.ActionLink("About", "About", "Home")%></li>
</ul>

</div>


NewOrderController文件中:

public ActionResult Index(int pageIndex)
{
int pageSize = 10;
var orderlist = nos.GetOrderList(pageIndex, pageSize);

//var new_order = nos.FindUp().ToList();
return View("Index", orderlist);
}


Global文件中:

public static void RegisterRoutes(RouteCollection routes)
{
routes.IgnoreRoute("{resource}.axd/{*pathInfo}");


routes.MapRoute(
"NewOrders",
"OrderList/{pageIndex}",
new { controller = "NewOrder", action = "Index"},
new { pageIndex = 0 }

);

routes.MapRoute(
"Default", // Route name
"{controller}/{action}/{id}", // URL with parameters
new { controller = "Home", action = "Index", id = "" } // Parameter defaults
);
}

protected void Application_Start()
{
RegisterRoutes(RouteTable.Routes);
}

总是提示:
A route named 'NewOrder' could not be found in the route collection.
参数名: name
...全文
135 15 打赏 收藏 转发到动态 举报
写回复
用AI写文章
15 条回复
切换为时间正序
请发表友善的回复…
发表回复
细嗅蔷薇 2010-11-04
  • 打赏
  • 举报
回复
记得结贴啊
mjfei 2010-11-04
  • 打赏
  • 举报
回复
aspnetmvc-stepbystep

网上找的这个资料,边看边学习~

分页是下的控件在用。。。。。
细嗅蔷薇 2010-11-04
  • 打赏
  • 举报
回复
一周就可以直接写程序 写分页了 真是牛X

<%= Html.Pager(Model.PageSize, Model.PageIndex, Model.TotalItemCount, new { @class = "current")%>

自带的分页控件 价格样式就行了 优缺点就不知道了
mjfei 2010-11-04
  • 打赏
  • 举报
回复
[Quote=引用 11 楼 lovesheng1212 的回复:]

前台好像要写成PagedList<new_order> 吧
初涉mvc 不懂额
[/Quote]

对的,我也是上周接触MVC,刚才下载MvcPager控件在用。

谢谢咯
细嗅蔷薇 2010-11-04
  • 打赏
  • 举报
回复
前台好像要写成PagedList<new_order> 吧
初涉mvc 不懂额
mjfei 2010-11-04
  • 打赏
  • 举报
回复
我勒个....

郁闷!
细嗅蔷薇 2010-11-04
  • 打赏
  • 举报
回复
Inherits="System.Web.Mvc.ViewPage<PageList<new_order>>"
PagedList<new_order> orders
差个d有区别么?
mjfei 2010-11-04
  • 打赏
  • 举报
回复
controller文件:

public ActionResult Index(int? id)
{
using (var db = new dz_mvcDataContext())
{
PagedList<new_order> orders = db.new_order.ToPagedList(id ?? 1, 10);
return View("Index",orders);
}
}

细嗅蔷薇 2010-11-04
  • 打赏
  • 举报
回复

<%@ Page Title="" Language="C#" MasterPageFile=" Mastername" Inherits="System.Web.Mvc.ViewPage<IPagedList<我的是强类型>>" %>
mjfei 2010-11-04
  • 打赏
  • 举报
回复

<%@ Page Title="" Language="C#" MasterPageFile="~/Views/Shared/Site.Master" Inherits="System.Web.Mvc.ViewPage<PageList<new_order>>" %>
<%@ Import Namespace="dz_mvc_test.Models" %>
<%@ Import Namespace="Webdiyer.WebControls.Mvc" %>


页面上加了这些,还是提示这个呢
细嗅蔷薇 2010-11-04
  • 打赏
  • 举报
回复
.......................
mjfei 2010-11-04
  • 打赏
  • 举报
回复
d:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET Files\root\9e290dbb\707c1d2\App_Web_index.aspx.309ea2b5.tw-truf9.0.cs(158,70): error CS0246: 找不到类型或命名空间名称“PageList”(是否缺少 using 指令或程序集引用?)

我在使用MvcPager控件分页时提示这个错误,是什么原因?
kkbac 2010-11-03
  • 打赏
  • 举报
回复
mjfei 2010-11-03
  • 打赏
  • 举报
回复
原来是 Index.aspx文件中

<%= Html.RouteLink("上一页", "NewOrder", new { pageIndex = Convert.ToInt32(Html.ViewContext.RouteData.Values["pageIndex"]) - 1 })%>
|
<%= Html.RouteLink("下一页", "NewOrder", new { pageIndex = Convert.ToInt32(Html.ViewContext.RouteData.Values["pageIndex"]) + 1 })%>


的"NewOrder"改为"NewOrders"就OK了。。。。
mjfei 2010-11-03
  • 打赏
  • 举报
回复
晕。。。找到原因了!

刚刚发出来就发现了

62,046

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧