首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

设置asp-controller和asp-action属性后找不到URL

是因为在ASP.NET Core中,这两个属性用于指定控制器和操作的名称,以便生成URL。如果找不到URL,可能是由于以下几个原因:

  1. 控制器或操作名称错误:请确保指定的控制器和操作名称是正确的,与实际代码中的控制器和操作名称一致。
  2. 路由配置错误:ASP.NET Core使用路由来映射URL到相应的控制器和操作。请确保在Startup.cs文件中正确配置了路由。可以使用MapControllerRoute方法来配置默认路由,例如:
代码语言:txt
复制
app.UseEndpoints(endpoints =>
{
    endpoints.MapControllerRoute(
        name: "default",
        pattern: "{controller=Home}/{action=Index}/{id?}");
});

这将配置一个默认路由,将请求映射到名为HomeController的控制器的Index操作。

  1. 缺少路由参数:如果控制器或操作需要参数,但未在URL中提供相应的参数,将无法找到URL。请确保在生成URL时提供了所需的参数。
  2. 区分大小写问题:ASP.NET Core默认情况下是区分大小写的,因此请确保控制器和操作名称的大小写与实际代码中的一致。

如果以上步骤都正确无误,但仍然找不到URL,请检查日志文件或调试信息以获取更多详细信息,以便进一步排查问题。

关于ASP.NET Core和路由配置的更多信息,可以参考腾讯云的相关文档和产品:

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

构建可读性更高的 ASP.NET Core 路由

PS:在构建 URL 的过程中,采用大写的地址还是采用小写的地址,每个人都会有自己的想法这样做的理由,这篇文章不讨论两种方案的优劣,只是提供一种构建小写 URL 地址以及让我们的 URL 可读性更高的解决方案...services.AddRouting(options => { options.LowercaseUrls = true; });   示例项目的顶部链接代码如下所示,运行项目可以看到,通过设置小写路由...,程序根据 Controller Action 自动生成的 URL 地址全部变成了小写。..."> <a class="nav-link text-dark" asp-area="" asp-controller="Home" asp-action...); });   当定义好参数转换器以及需要转换的 URL 路由参数,我们就可以在 AddRouting 方法中通过 ConstraintMap 进行配置需要转换的参数路由值。

66410
  • 使用ASP.NET Identity以手机短信实现双重验证创建一个ASP.NET 5项目运行应用程序使用SMS短信进行双重验证开启双重验证使用双重验证登陆应用程序禁用账户来防止暴力破解

    运行应用程序 在项目加载结束,运行这个应用程序,你将看到以下页面: 使用SMS短信进行双重验证 本教程使用Twilio,但是你也可以使用其他任何的SMS技术提供商。...= null) { Change @...:  |  Remove...} else { Add } ] <...最后点击提交,输入收到的验证码,登陆成功: 禁用账户来防止暴力破解 我们推荐你应用双重验证时使用账户禁用,一旦用户执行登录,每次失败的尝试将会被记录,一旦到达设置的错误次数(默认是五次),当前账户将会倍禁用

    2.6K60

    【asp.net core 系列】5 布局页和静态资源的处理

    布局页 在控制器视图那一篇,我们了解到_ViewStart 里设置了一个Layout属性的值,这个值正是用来设置布局页的。所谓的布局页,就是视图的公用代码。...="Home" asp-action="Index">Home <li class="...那么,如何在视图中<em>设置</em>分部内容呢?...静态资源引入 通常情况下,静态资源的引入与HTML引用js<em>和</em>css等资源是一致的,但是对于我们在编写系统时自己创建的脚本<em>和</em>样式表,asp.net core提供了不同的处理方式。...默认是 enabled: true sourceMap 表示是否为捆绑的文件生成源映射的标记 sourceMapRootPath 源映射文件的路径 2.2 使用 正常情况下在布局页中,把压缩<em>后</em>的文件路径引入即可

    1.4K30

    Asp.NetCore Web开发之RazorPage

    文件的扩展名为.cshtml 在Asp.NetCore MVC 程序中,Razor页面承载了所有的View渲染,在Controller中,通过Action 中的View()方法将Action其对应的...那如何进行数据交互呢,有三种方法 ViewData["Data"] = 1; //使用键值对的形式 ViewBag.Data = 1; //使用动态属性的形式 ViewBag直接点自定义属性名...:@model 类型完整名 另一种很方便的渲染方式是超链接: 跳转...这种标记方式叫做TagHelper默认是引用的,在_ViewImports.cshtml这个文件中可以看到,这个文件配置的是使用Razor页面一些必要的引用 注意,这种标记方式是GET类型,它解析的链接为...参数名=1,参数可以设置多个,根据自己的需求即可。 对于Razor页面相关,暂时先讲这些,后续在实例开发讲解中,会详细涉及...

    82740

    【实战 Ids4】║ 又一个项目迁移完成(MVC)

    ChristDDD如何配置 如果你之前看过或者用到了我的DDD项目,会发现其实本来是用Identity写的,这次我们迁移到Ids4,需要做一些变化,具体的直接下载我的Ids4分支就行了,修改的内容比较多...services == null) throw new ArgumentNullException(nameof(services)); //关闭默认映射,否则它可能修改从授权服务返回的各种claim属性...没有错误的话,我们就可以正式的跳转登录,登录成功,跳转回来MVC项目,下面我们就说说如何在MVC客户端项目中,进行策略授权。...navbar-nav navbar-right"> <a asp-area="" asp-controller="Manage" asp-action...到了这里,基本就结束了,还是建议大家多看看官网官方Demo,真的很有用。

    67820

    asp.net core后台系统登录的快速构建

    style type="text/css"> body { color: #fff; font-family: "微软雅黑"; font-size: 14px; background: url...ServiceLocator.Instance = app.ApplicationServices; } 代码说明 首先定义了一个存放服务的静态对象:ServiceLocator 在程序启动将...ApplicationKeys.User_Cookie_Encryption_Key); 所以在后台就能使用WebContext.AdminName获取到当前登录用户名,或者根据用户名获取登录信息 总结 自定义特性标记过滤器之间差开一个...,asp-controller等指定路由参数即可,并且能够自动生成防伪字段标识,配合ValidateAntiForgeryToken特性标记预防CSRF 代码生成比较图 相关文档地址:https://...docs.microsoft.com/zh-cn/aspnet/core/security/anti-request-forgery autofocus属性 可使文本框自动获取焦点 Demo下载地址 点击下载

    3.4K10

    ASP.NET MVC升级到ASP.NET Core MVC踩坑小结

    这一次重构先易难,步步为营,难题统一在后面解决,到现在已经完成了全部工程的百分之八十,后面的也没有太困难了,所以特地抽出时间小结一下。....NET Framework中,会有一些常用的封装库,如Session、CookieHttpRuntime等,这些变化比较大,所以自己在Startup中启用。...["X-Requested-With"] == "XMLHttpRequest"; return false; } 4、Area注册 之前的AreaRegistration已经不存在,如果需要设置...---- 2、Ajax.BeginForm换成了<form asp-controller="DistributorGrade" asp-action="Save" id="addform" data-ajax...---- 3、第2条出现的asp-action等是通过Razor Tag Helpers来实现的,很多的自定义需要加入到_ViewImports.cshtml,当然一些引用也可以统一放到这里,如@using

    2.3K21

    ASP.NET Core 反向代理部署知多少

    Kestrel作为一个边缘web服务器部署时,其将独占一个IP端口。在没有反向代理服务器的情况下,用作边缘服务器的Kestrel不支持在多个进程之间共享相同的IP端口。...启用 UsePathBase 中间件 这时就要用到UsePathBase中间件了,其作用就是设置站点请求基础路径。...通常,除了诊断错误处理中间件外,请求头转发中间件应先于其他中间件运行。 配置完成,重新部署,对于一般的项目,应该可以正常运行了。...也就是Razor TagHelper 渲染的Manage Client,并没有帮按照UsePathBase...咱们只能看看源码一探究竟了Microsoft.AspNetCore.Mvc.TagHelpers/AnchorTagHelper.cs,最终在拼接Herf属性时使用的是var pathBase = ActionContext.HttpContext.Request.PathBase

    1.5K10

    ASP.NET Core ASP.NET Framework 共享 Identity 身份验证

    .NET Core 已经热了好一阵子,1.1版本发布其可用性也越来越高,开源、组件化、跨平台、性能优秀、社区活跃等等标签再加上“微软爸爸”主推大力支持,尽管现阶段对比.net framework...DOCTYPE html> 登录 <form asp-controller="Account" asp-action...首先我们对 .net core 的 Cookie 认证添加 domain 属性 ticket 属性 public void Configure(IApplicationBuilder app, IHostingEnvironment...或者说我们没有办法将所有的项目都进行更改,然后新增的 .net core 站点同时上线,如果这么做了,那么更新周期会拉的很长不说,测试更新之后的维护阶段压力都会很大。...formsAuthTicket.IssueDate, formsAuthTicket.Expiration }); } 有了 webapi 这条线,解密解决了,加密就更简单了,通过 webapi 获取加密

    2K70
    领券