ページングを実行できるようにするために、新しいルートを追加するのに問題があります。
Route.Config.cs ファイルに新しいルートを追加しましたUpcomingOffers
:
public class RouteConfig
{
public static void RegisterRoutes(RouteCollection routes)
{
routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
routes.MapRoute(
name: "Default",
url: "{controller}/{action}/{id}",
defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional }
);
routes.MapRoute(
name: "UpcomingOffers",
url: "Offer/Page/{page}",
defaults: new { controller = "Offer", action = "Index" }
);
}
}
私の Global.asax.cs ファイルには、Application_Start の下にあります。
RouteConfig.RegisterRoutes(RouteTable.Routes);
私のオファーコントローラーには次のものがあります。
//
// GET: /Offer/
// GET: /Offer/Page/2
public ActionResult Index(int? page)
{
const int pageSize = 10;
var item = db.Customers.OrderByDescending(x => x.OfferCreatedOn).ToList();
var paginatedItems = item.Skip((page ?? 0) * pageSize)
.Take(pageSize)
.ToList();
return View(paginatedItems);
}
しかし、ナビゲートするとhttp://localhost:64296/offer/page/1
、次のエラー メッセージが表示されます。
「/」アプリケーションでサーバー エラーが発生しました。
リソースが見つかりません。
説明: HTTP 404。探しているリソース (またはその依存関係の 1 つ) は、削除されたか、名前が変更されたか、一時的に利用できない可能性があります。次の URL を見直して、スペルが正しいことを確認してください。
要求された URL: /offer/page/1
誰かが私が間違ったことを見ることができますか? 私はそれが私のルートのどこかにあるのではないかと疑っています...
ありがとうございました、
マーク