【问题标题】:NET 6 asp net web controller how to use custom placeholder in the route templateNET 6 asp 网络控制器如何在路由模板中使用自定义占位符
【发布时间】:2022-11-15 06:24:59
【问题描述】:

对于 NET 6 asp 网络服务器,是否可以在控制器路由模板中使用自定义占位符?

[Route("{myProjectApiName}/v{version:apiVersion}/testData")]
[ApiVersion("1.0")]
[ApiController]
public class MyTestController: ControllerBase
{
...

“myProjectApiName”占位符默认情况下应该是字符串“api”,但应该可以将它设置为一些项目特定的值,这取决于应用程序启动时读取的一些配置参数(例如一些值,如“myproj1” -api", "myproj2-api",...)。 路由 URL 也应该在 swagger 中正确显示:

...
app.UseSwagger();
app.UseSwaggerUI(c => c.SwaggerEndpoint("/swagger/v1/swagger.json", "xxx.WebServer v1"));
...

如何在 NET 6 中实现这一点?

【问题讨论】:

    标签: c# asp.net-core url controller .net-6.0


    【解决方案1】:

    只需将自定义字符串添加到标题中即可。

    string myString = "SomeRandomValue";
    [Route(myString + "[controller]")]
    

    您应该可以将任何您想要的内容放入[Route()]

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2020-06-12
      • 1970-01-01
      • 2013-01-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多