Я изучаю ASP.NET core 2.0 для своего веб-приложения и использую файл json в качестве источника данных маршрутизации, что-то вроде этого:
route data source(jsonroute.json):
{
"RouteSettings": [
{
"Name": "ArticleRoute",
"Template": "{pathroot:regex((?i)^(HelperCenter|xxzx))}/{*pathetc:regex(^.*?(?<!index\\d*(/|\\.html)?)$)}",
"Default": {
"Controller": "Article", //articlecontroller is a file of site controllers, is selected when editing article class information
"Action": "Index"
}
},
{
"Name": "ArticleClassRoute",
"Template": "{pathroot:regex((?i)^(HelperCenter|Tours|xxzx))}/{*pathetc:regex((?i)^.*?(?<=index\\d*(/|\\.html)?)$)}",
"Default": {
"Controller": "ArticleClass",
"Action": "Index"
}
},
....
]
}
отображение в mvc routebuilder:
app.UseMvc(routeBuilder =>
{
foreach (IConfigurationSection routeConfigItem in configurationItems)
{
.......
routeBuilder.MapRoute(
name: nameSection.Value, //this is form json name node
template: templateSection.Value, // this is from template node
defaults: defaultValueDictionary //this is from default node
);
}
}
);
На startup.cs
я прочитал информацию из этого файла json и сопоставил ее с mvc iroutebuilder для каждого элемента.но есть вопрос: файл json взят из класса статьи моего сайта и настроек статьи, это может быть изменено после того, как классы статьи были изменены.так что я хочу знать, есть ли способ, позволяющий мне изменить маршрут маршрутов, когда мой веб-сайт работает в сети?я хочу изменить коллекции маршрутов с помощью операций по управлению моим веб-сайтом, и это стало возможным в режиме онлайн.