热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

无法部署RazorPages网站

如何解决《无法部署RazorPages网站》经验,有好办法吗?

我建立了一个简单的Razor Pages网站,以显示几个数据库表的一些视图。

index.cshtml.cs我只是有:

public class IndexModel : PageModel
{
    public IActionResult OnGet()
    {
        return RedirectToPage("./Registrations/Index");
    }
}

Registrations/index.cshtml.cs我有:

public class IndexModel : PageModel
{
    int pageSize = 30;

    private readonly RegistrationAdmin.PostgresDbContext _context;

    public IndexModel(RegistrationAdmin.PostgresDbContext context)
    {
        _cOntext= context;
    }

    public PaginatedList Registration { get; set; }

    public async Task OnGetAsync(int pageIndex = 1)
    {
        IQueryable registratiOns= _context.Registrations
            .Include(r => r.ContactPerson)
            .Include(r => r.Badge)
            .OrderByDescending(r => r.RegistrationId);

        this.Registration = await PaginatedList.
                            CreateAsync(registrations.AsNoTracking(), pageIndex, pageSize);
    }
}

从Visual Studio测试网站很好,从项目目录运行dotnet run也可以。

因此,我通过以下方式部署了该网站:

dotnet publish -o ../Published/ -c release

然后dotnet MyWebsite.dll从发布目录运行它。

当我连接到http:// localhost:5000时,出现一般错误。

查看控制台,这是抛出的异常:

Microsoft.AspNetCore.Diagnostics.ExceptionHandlerMiddleware[1]
  An unhandled exception has occurred while executing the request.
System.InvalidOperationException: No page named './Registrations/Index' matches the supplied values.
   at Microsoft.AspNetCore.Mvc.Infrastructure.RedirectToPageResultExecutor.ExecuteAsync(ActionContext context, RedirectToPageResult result)
   at Microsoft.AspNetCore.Mvc.RedirectToPageResult.ExecuteResultAsync(ActionContext context)
   at Microsoft.AspNetCore.Mvc.Internal.ResourceInvoker.InvokeResultAsync(IActionResult result)
   at Microsoft.AspNetCore.Mvc.Internal.ResourceInvoker.InvokeNextResultFilterAsync[TFilter,TFilterAsync]()
   at Microsoft.AspNetCore.Mvc.Internal.ResourceInvoker.Rethrow(ResultExecutedContext context)
   at Microsoft.AspNetCore.Mvc.Internal.ResourceInvoker.ResultNext[TFilter,TFilterAsync](State& next, Scope& scope, Object& state, Boolean& isCompleted)
   at Microsoft.AspNetCore.Mvc.Internal.ResourceInvoker.InvokeResultFilters()
   at Microsoft.AspNetCore.Mvc.Internal.ResourceInvoker.InvokeNextResourceFilter()
   at Microsoft.AspNetCore.Mvc.Internal.ResourceInvoker.Rethrow(ResourceExecutedContext context)
   at Microsoft.AspNetCore.Mvc.Internal.ResourceInvoker.Next(State& next, Scope& scope, Object& state, Boolean& isCompleted)
   at Microsoft.AspNetCore.Mvc.Internal.ResourceInvoker.InvokeFilterPipelineAsync()
   at Microsoft.AspNetCore.Mvc.Internal.ResourceInvoker.InvokeAsync()
   at Microsoft.AspNetCore.Builder.RouterMiddleware.Invoke(HttpContext httpContext)
   at Microsoft.AspNetCore.StaticFiles.StaticFileMiddleware.Invoke(HttpContext context)
   at Microsoft.AspNetCore.Diagnostics.ExceptionHandlerMiddleware.Invoke(HttpContext context)

我无法理解已部署的版本出了什么问题。


推荐阅读
author-avatar
手机用户2502929967
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有