在 .Net 核心 Controller 中,我想解析自定义 URL(字符串)以获取其 routeDatas。
在 .Net 4.5 中,这段代码完成了这项工作。 .Net Core 中的等价物是什么?
var routeData = System.Web.Routing.RouteTable.Routes.GetRouteData(
new HttpContextWrapper(
new HttpContext(
new HttpRequest(null, link.Url, ""),
new HttpResponse(new System.IO.StringWriter())
)
)
)
最佳答案
这样做的 dotnet 核心方法是使用 LinkParser 的 ParsePathByEndpointName 方法 https://learn.microsoft.com/en-us/dotnet/api/microsoft.aspnetcore.routing.linkparserendpointnameaddressextensions.parsepathbyendpointname?view=aspnetcore-5.0#Microsoft_AspNetCore_Routing_LinkParserEndpointNameAddressExtensions_ParsePathByEndpointName_Microsoft_AspNetCore_Routing_LinkParser_System_String_Microsoft_AspNetCore_Http_PathString _
var values = parser.ParsePathByEndpointName("default", "/Home/Index");
var controllerName = values["controller"];
关于c# - .Net 核心 : How to get RouteData from URL string?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52043353/