为什么我的Razor Page方法没有被调用?

时间:2019-09-19 10:06:21

标签: c# asp.net-core razor-pages

我无法使Razor Pages正常工作。它将显示“索引”页面,仅此而已。该页面上没有任何链接,也不会显示任何数据。编译器会完全忽略所有Helper方法,甚至不会以其他颜色突出显示它们。

页面加载时,它将调用Get函数并显示页面,但是视图上的所有功能均无效。我已经删除了所有内容,所以我只有一个页面,上面有几个发布按钮,但仍然不会调用Post方法。有谁知道发生了什么事?

这是我的观点:

@page
@model FloorCore.Areas.Jobs.Pages.JobIndexModel
@{
}

<form method="post">
    <button class="btn btn-default">Click to post</button>
    <button type="submit" class="btn btn-primary">Click to post</button>
</form>

这是控制器:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
using Microsoft.AspNetCore.Mvc;
using Microsoft.AspNetCore.Mvc.RazorPages;

namespace FloorCore.Areas.Jobs.Pages
{
    public class JobIndexModel : PageModel
    {
        public void OnGet()
        {
            int for_breakpoint = 0;
        }

        public void OnPost()
        {
            int for_breakpoint  = 0;
        }
    }
}

单击任一按钮只会返回: 此页面无效。 如果问题仍然存在,请与网站所有者联系。 HTTP错误400

未调用控制器上的OnPost方法。

1 个答案:

答案 0 :(得分:1)

我回来回答自己的问题,是因为我弄清楚了问题所在,这也许会对其他人有所帮助。我在此特定区域中缺少_ViewImports文件。

_ViewImports包含以下行:

@addTagHelper *, Microsoft.AspNetCore.Mvc.TagHelpers

我需要使用它来使辅助方法起作用。

相关问题