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

在asp.net core 3中创建漂亮的url

在ASP.NET Core 3中创建漂亮的URL,可以通过路由配置和URL重写来实现。以下是一些步骤和技术,可以帮助您实现这个目标:

  1. 路由配置:在ASP.NET Core中,可以使用路由来定义URL的结构和参数。在Startup.cs文件的Configure方法中,可以添加路由配置。例如,可以使用MapRoute方法来定义一个路由模板,指定控制器和动作方法的名称,并可以包含参数。示例代码如下:
代码语言:txt
复制
app.UseEndpoints(endpoints =>
{
    endpoints.MapControllerRoute(
        name: "default",
        pattern: "{controller=Home}/{action=Index}/{id?}");
});

上述代码中,定义了一个名为"default"的路由模板,指定了默认的控制器为"Home",默认的动作方法为"Index"。还可以指定可选的参数"id"。

  1. URL重写:URL重写是一种技术,可以将传入的URL重写为另一个URL。在ASP.NET Core中,可以使用中间件来实现URL重写。在Startup.cs文件的Configure方法中,可以添加URL重写中间件。示例代码如下:
代码语言:txt
复制
app.UseRewriter(new RewriteOptions()
    .AddRewrite("old-url", "new-url", skipRemainingRules: true));

上述代码中,将"old-url"重写为"new-url"。可以根据需要添加更多的重写规则。

  1. URL美化:为了创建漂亮的URL,可以使用URL特性和自定义路由模板。在控制器的动作方法上,可以使用[Route]特性来指定自定义的路由模板。示例代码如下:
代码语言:txt
复制
[Route("products/{id}")]
public IActionResult Details(int id)
{
    // 动作方法的实现
}

上述代码中,指定了一个自定义的路由模板"products/{id}",其中的"{id}"是一个参数。

  1. 推荐的腾讯云相关产品:腾讯云提供了多个与云计算相关的产品和服务,可以帮助您构建和部署ASP.NET Core应用程序。以下是一些推荐的腾讯云产品:
  • 云服务器(CVM):提供可扩展的虚拟服务器实例,用于托管ASP.NET Core应用程序。
  • 云数据库MySQL版(CMYSQL):提供高性能、可扩展的MySQL数据库服务,用于存储应用程序的数据。
  • 腾讯云CDN:提供全球加速和缓存服务,用于加速ASP.NET Core应用程序的静态资源。
  • 腾讯云负载均衡(CLB):提供流量分发和负载均衡服务,用于将请求分发到多个ASP.NET Core应用程序实例。
  • 腾讯云对象存储(COS):提供高可靠性、低成本的对象存储服务,用于存储和管理应用程序的文件和媒体资源。

以上是关于在ASP.NET Core 3中创建漂亮的URL的一些步骤和推荐的腾讯云产品。希望对您有帮助!

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

相关·内容

ASP.NET Core 程序制作 URL 301302 跳转

如果你有一些需要重定向网页 URL 情况,可以返回 HTTP 状态码 301/302 告诉浏览器或者搜索引擎访问新 URL。本文描述如何在 ASP.NET Core 中进行重定向。...ASP.NET Core ASP.NET Core Blazor 框架生成页面路由时候是不识别 .html 后缀,而带有 .html 后缀 URL 会被识别为静态文件。...于是,如果创建了一个空 Blazor 应用,当访问 https://blog.walterlv.com/post/redirect-middleware-for-asp-dotnet.html 网址时候...中 Use 方法即可,传入一个委托用来 URL 处理过程中添加一个步骤。...; 你可以将一些已经过时网页进行 301 跳转到新网页; 比如我将一些之前不太规范博客 URL 重定向到统一格式; 你可以迁移服务时候临时做一个 302 跳转。

27210
  • ASP.NET Core路由:注册URL模式与HttpHandler映射关系

    ASP.NET Core路由是通过一个类型为RouterMiddleware中间件来实现。...HttpHandler之间映射 ASP.NET Core针对请求处理总是一个通过HttpContext对象表示上下文中进行,所以上面我们所说HttpHandler从编程角度来讲体现为一个RequestDelegate...接下来我们就同一个简单实例来演示这样映射关系是如何通过注册RouterMiddleware中间件方式来完成。 我们演示这个ASP.NET Core应用是一个简易版天气预报站点。...我们程序中会先根据ApplicationBuilder对象创建一个RouteBuilder对象,并利用后者来创建这个Router。...ASP.NET Core针对我们常用验证规则定义了相应约束表达式,我们可以根据需要为某个路由参数指定一个或者多个约束表达式。

    1.4K60

    5种设置ASP.NET Core应用程序URL方法

    默认情况下,ASP.NET Core应用程序监听以下URL: •http://localhost:5000•https://localhost:5001 在这篇文章中,我展示了5种不同方式来更改您应用程序监听...UseUrls() 设置绑定URL第一个也是最简单方法,配置IWebHostBuilder时候使用UseUrls()进行硬编码。...launchSettings.json 大多数 .NET项目模板Properties文件夹中都包含launchSettings.json文件,这个文件包含了启动.NET Core应用程序各种配置文件...总结 在这篇文章中,我展示了五种不同方式来设置应用程序监听URL。...UseUrls()是最简单一种,但通常不适合在生产中使用, launchSettings.json文件是开发环境中设置URL是非常有用

    1.7K10

    ASP.NET Core路由:注册URL模式与HttpHandler映射关系

    ASP.NET Core路由是通过一个类型为RouterMiddleware中间件来实现。...目录 一、注册请求路径与HttpHandler之间映射 二、设置内联约束 三、为路由参数设置默认值 四、特殊路由参数 一、注册请求路径与HttpHandler之间映射 ASP.NET Core针对请求处理总是一个通过...接下来我们就同一个简单实例来演示这样映射关系是如何通过注册RouterMiddleware中间件方式来完成。 我们演示这个ASP.NET Core应用是一个简易版天气预报站点。...我们程序中会先根据ApplicationBuilder对象创建一个RouteBuilder对象,并利用后者来创建这个Router。...ASP.NET Core针对我们常用验证规则定义了相应约束表达式,我们可以根据需要为某个路由参数指定一个或者多个约束表达式。

    1.3K10

    ASP.NET Core路由:Router创建者——RouteBuilder

    《注册URL模式与HttpHandler映射关系》演示实例中,我们总是利用一个RouteBuilder对象来为RouterMiddleware中间件创建所需Router对象,接下来我们就着重来介绍这个对象...[本文已经同步到《ASP.NET Core框架揭秘》之中] 目录 一、RouteBuilder 二、RouteCollection 三、多个Route共享同一个Handler 四、每个Route具有独立...Handler 五、扩展方法MapVerb 一、RouteBuilder 如下面的代码片段所示,RouteBuilder对Router对象创建体现在它Build方法上。...Core默认使用是如下一个实现了IRouteBuilderRouteBuilder类型。...至于最为核心Build方法,我们可以看出它返回实际上是通过注册Router对象创建一个RouteCollection对象。

    91050

    【C】KoobooJsonasp.net core使用

    详细介绍可以参考官方说明,项目地址:https://github.com/Kooboo/Json ps:楼主目前使用版本是:asp.net core 2.2 asp.net core 2.x 中,...默认使用json序列化工具是 Newtonsoft.Json ,如果你正在使用 asp.net core mvc/webapi ,并且需要对 Json 序列化进行一些配置(例如 首字母大小写,日期格式化等...,对于byte[]类型base64解析行为, KoobooJson已经内嵌配置项中, 只要设置serializerOption.IsByteArrayFormatBase64 = true 即可 public...;//设置全局对于byte[]类型自定义反序列化方式 }); }); } 参考资料: 1.Asp.Net Core...中Json序列化处理整理 2.将 .NET Core 2.0 默认 JSON 解析器替换为 Jil ———————————————— 版权声明:本文为CSDN博主「j_teng」原创文章,遵循 CC

    65650

    ASP.NET Core路由中间件: 终结点与URL映射

    ASP.NET Core路由是通过EndpointRoutingMiddleware和EndpointMiddleware这两个中间件协作完成,它们ASP.NET Core平台上具有举足轻重地位...,因为ASP.NET Core MVC框架就建立在这个中间件之上。...可以将一个ASP.NET Core应用视为一组终结点组合,所谓终结点可以理解为能够通过HTTP请求形式访问远程服务。每个终结点通过RequestDelegate对象来处理路由过来请求。...ASP.NET Core路由是通过EndpointRoutingMiddleware和EndpointMiddleware这两个中间件来实现,这两个中间件类型都定义NuGet包“Microsoft.AspNetCore.Routing...ASP.NET Core为常用验证规则定义了相应约束表达式,我们可以根据需要为某个路由参数指定一个或者多个约束表达式。

    92831

    ASP.NET Core创建基于Quartz.NET托管服务轻松实现作业调度

    在这篇文章中,我将介绍如何使用ASP.NET Core托管服务运行Quartz.NET作业。这样好处是我们可以应用程序启动和停止时很方便来控制我们Job运行状态。...对于许多ASP.NET开发人员来说它是首选,用作计时器上以可靠、集群方式运行后台任务方法。...将Quartz.NET与ASP.NET Core一起使用也非常相似-因为Quartz.NET支持.NET Standard 2.0,因此您可以轻松地应用程序中使用它。...托管服务ASP.NET Core应用程序启动时启动,并在应用程序生命周期内在后台运行。通过创建Quartz.NET托管服务,您可以使用标准ASP.NET Core应用程序在后台运行任务。...对于此测试,我创建了一个ASP.NET Core项目并选择了Empty模板。您可以使用dotnet add package Quartz来安装Quartz.NET软件包。

    2.9K20

    ASP.NET Core 基础知识】--最佳实践和进阶主题--设计模式ASP.NET Core应用

    8.2 ASP.NET Core应用 ASP.NET Core中,工厂模式常用于创建不同类型服务或组件,以满足应用程序需求。...以下是工厂模式ASP.NET Core一些应用场景: 服务创建: 可以使用工厂模式创建不同类型服务对象。...中间件创建ASP.NET Core中,中间件是处理HTTP请求重要组件。可以使用工厂模式创建不同类型中间件对象。...依赖注入服务: ASP.NET Core中,依赖注入是一种常见服务管理方式。可以使用工厂模式创建不同类型依赖注入服务对象。...配置对象创建ASP.NET Core中,配置对象是应用程序中常用对象之一。可以使用工厂模式创建不同类型配置对象。

    23800

    【Docker】Asp.net coredocker容器中端口问题

    1.Kestrel配置 ASP.NET Core项目使用Kestrel作为默认web服务器。...而集成KestrelASP.NET Core有4种方式指定终结点URL: ASPNETCORE_URLS 环境变量 --urls命令行参数 urls 主机配置键 UseUrls扩展方法 2.按图索骥-...Dockerfile 2.1 Asp.Net Core Runtime 首先我们按照asp.net core其中一个版本构建镜像Dockerfile ARG REPO=mcr.microsoft.com...指定版本运行时压缩包 验证压缩包正确性 解压压缩文件 删除压缩文件 ” 2.2 .Net Core Runtime 根据上面的Dokcerfile,可以看到asp.net core镜像是.net...Runtime Dependencies 根据上面的Dokcerfile,可以看到.net core镜像是runtime-deps基础上构建,所以继续找到runtime-deps构建镜像Dockerfile

    2.3K20

    ASP.NET Core 程序启动前运行你代码

    但是 ASP.NET Core 项目中,并没有原生存在这样方法,那么我们如何在 ASP.NET Core 应用中自己动手实现类似的功能呢?...3、后事之师 了解了之前版本中实现方式,现在我们仔细看看 Application_Start 这个方法中执行每行代码功能,是不是特别像我们 ASP.NET Core 项目中使用各种中间件?...然而,如果你有使用过 ASP.NET Core 后就会知道,ASP.NET Core中间件是会在每次请求时都会触发,虽然我们可以我们自定义中间件中设置缓存中不存在数据就写入,存在就直接跳过代码逻辑... ASP.NET Core 应用启动过程中存在着两个非常重要对象,对应到我们采用 ASP.NET Core 3.X 项目中则是 Host 以及 HostBuilder。...三、参考 [ASP.NET Core 3框架揭秘] 依赖注入[8]:服务实例生命周期 200行代码,7个对象——让你了解 ASP.NET Core 框架本质 ASP.NET Core 2.0 : 七

    2.3K10

    ASP.NET Core 5 IIS,Nginx,Caddy下性能测试

    导语 ASP.NET Core 从 2.2 版本起, IIS 下可以使用 InProcess 模式提高性能,国外大神 Rick Strahl 对此有一片详细文章。...曾经结论 Rick Strahl 原文* 中测试了 Windows 下 ASP.NET Core 2.2 Kestrel、IIS InProcess、IIS Out of Process 中性能...很多朋友想知道, 2021年跑 ASP.NET Core 5.0 到底用 Windows 还是 Linux 性能好,因此我决定用类似的方法相同配置服务器上重新跑一下 ASP.NET Core 5.0...ASP.NET Core Runtime 对于 Linux 优化没有 Windows 版好。...当然了,光一个输出字符串测试,并不能代表 ASP.NET Core 5.0 及各服务器性能表现全部,实际项目中,影响性能因素非常多。

    2.3K20

    ASP.NET CoreCentOS上最小化部署实践

    引言 本文从Linux小白视角, CentOS服务器上搭建一个Nginx-Powered AspNet Core Web准生产应用。...开始之前,我们还是重温一下部署原理,正如你所常见.Net Core 部署图: ?...Linux上部署.Net Core App最好方式是使用Kestrel 服务端口5000上支撑web应用;然后设置Nginx作为反向代理服务器,将输入请求转发给Kestrel服务器, 这个模式称为...部署模型优势: 可扩展性:反向代理服务器和Web服务器可以设置一台或者不同机器上,为伸缩部署提供可能, 可按需部署多个Web服务器,Nginx反向代理服务器本身可充当优秀负载均衡器。...下面root用户组下创建www-data用户,并给予owner权限 sudo useradd -m -g root www-data sudo chown www-data var/www/eqidproxyserver

    80910
    领券