在ASP.NET Core中,可以使用[FromRoute]
特性来自动将URL参数解码。默认情况下,ASP.NET Core会自动解码URL参数,但在某些情况下,可能需要显式地使用[FromRoute]
特性来确保参数被正确解码。
以下是一个示例解决方法:
SampleController
的控制器:public class SampleController : Controller
{
[HttpGet("sample/{param}")]
public IActionResult SampleAction([FromRoute] string param)
{
// 在这里使用解码后的参数
return Ok(param);
}
}
Startup.cs
文件中添加路由配置:public void Configure(IApplicationBuilder app, IWebHostEnvironment env)
{
// ...
app.UseRouting();
app.UseEndpoints(endpoints =>
{
endpoints.MapControllers();
});
}
http://localhost:5000/sample/Hello%20World
在上面的示例中,[FromRoute]
特性将确保param
参数被自动解码,并将其值设置为Hello World
。