ASP.NET Core 知识速递 - Day 3:每天进步一点

文摘   2024-09-16 08:00   日本  

我们在 ASP.NET Core 知识速递 - Day 1:每天进步一点 说到了HTTP请求的URL查询参数,这一节我们讲解一下在ASP.NET Core中如何优雅的拼接字符串,来提升我们代码的可读性。我们在这里会用到一个QueryString对象,这是一个C#中的结构体类型。

接下来我们创建一个简单的ASP.NET Core应用程序,添加如下代码:
var app = WebApplication.Create();app.Run(async context =>{    var dicts = new Dictionary<string, string>()    {        ["id"] = "001",        ["name"] = "桂兵兵",        ["birthday"] = "1986/08/30",        ["guid"] = Guid.NewGuid().ToString(),        ["artist"] = "Bill Gui",        ["formula"] = "10 * 5 = 50"    };    var queryString = QueryString.Create(dicts);    context.Response.Headers.Append("Content-Type", "text/html;charset=utf-8");    await context.Response.WriteAsync($@"<html>    <head>        <link rel=""stylesheet"" href=""https://cdnjs.cloudflare.com/ajax/libs/bulma/0.7.5/css/bulma.css"" />    </head>    <body class=""content"">    <div class=""container"">    <h1>使用 QueryString.Create 创建编码的URL查询字符串</h1>    <strong>Input</strong>    ");    await context.Response.WriteAsync("<ul>");    foreach (var k in dicts)    {        await context.Response.WriteAsync($"<li>{k.Key} = {k.Value}</li>");    }    await context.Response.WriteAsync("</ul>");    await context.Response.WriteAsync("<strong>输出</strong><br/>");    await context.Response.WriteAsync(queryString.Value);    await context.Response.WriteAsync("</ul>");    await context.Response.WriteAsync(@"</div></body></html>");});app.Run();
运行应用程序,我们看一下运行效果:

从运行效果看,我们看到QueryString.Create方法创建是经过编码之后的URL。

源代码地址:
https://github.com/bingbing-gui/AspNetCore-Skill/tree/master/src/aspnetcore-knowledge-point/query-string-create

桂迹
分享原创,记录痕迹!
 最新文章