Если Я правильно прочитал ваш вопрос, вы хотели бы избежать манипуляции со строками и безопасно использовать URL-кодировку.
Если это то, что вы хотите , пожалуйста, рассмотрите возможность использования UriHelper.BuildRelative
из Microsoft.AspNetCore.Http.Extensions
См. UriHelper
Опять при условии, что нам нужно построить относительный URL , вы могли бы сделать что-то вроде
var category = "prigotuvannya-yizhi";
var subCategory = "dukhovi-shafi";
var id = 42;
var result =
new[] { category, subCategory, id.ToString() }
.Aggregate("/", (acc, x) => UriHelper.BuildRelative(acc, "/" + x));
Открытые вопросы:
- Что держит
literals
? Похоже, это объект, поэтому вам нужно будет проецировать его на скаляр, чтобы поместить в URL