Мы обновили проект до версии 3.0 ядра asp.net и хотели бы использовать маршрутизацию конечной точки.
У меня есть следующий старый метод:
public static IRouteBuilder MapLocalizedRoute(this IRouteBuilder routeBuilder,
string name, string template, object defaults, object constraints, object dataTokens)
{
if (routeBuilder.DefaultHandler == null)
{
throw new ArgumentNullException(nameof(routeBuilder));
}
//get registered InlineConstraintResolver
var inlineConstraintResolver = routeBuilder.ServiceProvider.GetRequiredService<IInlineConstraintResolver>();
//create new generic route
routeBuilder.Routes.Add(new LocalizedRoute(routeBuilder.DefaultHandler, name, template,
new RouteValueDictionary(defaults), new RouteValueDictionary(constraints),
new RouteValueDictionary(dataTokens), inlineConstraintResolver));
return routeBuilder;
}
Мне нужно изменить тип this IEndpointRouteBuilder routeBuilder . Но как мне реализовать добавление нового универсального роутера? Интерфейс IEndpointRouteBuilder не имеет свойства Routes, и я не могу использовать routeBuilder.Routes.Add ...