繁体   English   中英

如何在.net核心网站中将url设置为webapi?

[英]How to set url as webapi in the .net core web?

在Web应用程序中,我创建了一个Page:DetailPage

public void OnGet(int id)
{
    var bll = new BLL.Articles();
    Item = bll.GetModel(id);
    if (Item == null)
    {
        RedirectToPage("Blogs");
    }
}

网址是

localhost/Detail?id=1

我可以将其作为Web API URL,例如`

localhost/Detail/1

我添加了[HttpGet("id")]但是没有按预期工作。

您可以将它添加到*.cshtml页面的顶部:

@page "{id:int}"

然后在您的详细信息页面:

public void OnGet([FromRoute] int id)

无需修改Startup.cs文件。

由于@Nkosi在注释中提供了正确的文档 ,您必须修改Startup.cs

像这样更改ConfigureServices方法:

services.AddMvc().SetCompatibilityVersion(CompatibilityVersion.Version_2_0)
.AddRazorPagesOptions(options =>
{
    options.Conventions.AddPageRoute("/Detail", "Detail/{id}");
});

现在实现标准视图

@page
@model Item

<p>@Model.[property]</p>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM