2016-08-24 65 views
0

发布后,来自(sakura.AspNetCore)的寻呼机按钮发出错误的URL,缺少该网站的基础文件夹。例如,在此视图中:http://localhost/glide/Clientes单击传呼机按钮“2”后,生成的URL为:http://localhost/Clientes?page=2导致HTTP 404.0 - 由于缺少“/ glide”而未找到。ASP.NET MVC Core - 查看未发现后

Startup.cs

app.UseMvc(路径=> {

  routes.MapRoute(
       name: "default", 
       template: "{controller=Home}/{action=Index}/{id?}"); 
     }); 

ClientesController.cs

public async Task<IActionResult> Index(string searchString, string sortOrder, int? page) 
    { 
     ViewBag.NameSortParm = string.IsNullOrEmpty(sortOrder) ? "name_desc" : ""; 

     var clientes = from c in _context.ClienteBasico 
         select c; 

     if (!String.IsNullOrEmpty(searchString)) 
     { 
      clientes = clientes.Where(c => c.Nome.Contains(searchString)); 
     } 

     var pageNumber = (page ?? 1); 
     var pageSize = 5; 

     switch (sortOrder) 
     { 
      case "name_desc": 
       clientes = clientes.OrderByDescending(c => c.Nome); 
       break; 
      default: 
       clientes = clientes.OrderBy(c => c.Nome); 
       break; 
     } 
     //return View(clientes.ToList()); 
     return View(clientes.ToPagedList(pageSize, pageNumber)); 
    } 
+0

您如何在视图中设置按钮? –

+0

在我使用的视图中:

回答

0

可以改变网址如何使用PagerOptions.ItemOptions.Default.Link属性生成:

<pager item-default-link='Sakura.AspNetCore.Mvc.PagerItemLinkGenerators.Format(Url.Content("~") + "/Clientes?page={0:d}")'/>