powered by simpleCommunicator - 2.0.59     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Как узнать с помощью какого роута пришли ?
12 сообщений из 12, страница 1 из 1
Как узнать с помощью какого роута пришли ?
    #39162417
ProBiotek
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Привет. Подскажите пожалуйста, как можно узнать какой роут был выбран для обработки адреса?

Пробовал копать в этом направлении:
Код: c#
1.
((System.Web.Mvc.MvcHandler)this.Context.Handler).RequestContext.RouteData.


Там вроде есть то, что мне нужно - но скрывается в приватных данных !
...
Рейтинг: 0 / 0
Как узнать с помощью какого роута пришли ?
    #39162419
ProBiotek
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вот еще перл
Код: c#
1.
string mainRoute = this.Request.CurrentExecutionFilePath.Split(new char[] {'/'}).First(x=>!string.IsNullOrWhiteSpace(x));
...
Рейтинг: 0 / 0
Как узнать с помощью какого роута пришли ?
    #39162467
handmadeFromRu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
https://www.nuget.org/packages/routedebugger/

п.с. в роутах нет ничего приватного, эт просто таблица соотвествий
...
Рейтинг: 0 / 0
Как узнать с помощью какого роута пришли ?
    #39162773
ProBiotek
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
handmadeFromRu,

Мне нужно вычислять это программно.
...
Рейтинг: 0 / 0
Как узнать с помощью какого роута пришли ?
    #39162932
handmadeFromRu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
что вычислять и где? ты уж задай верный вопрос. ты спросил как узнать выбранный роутинг,я те скинул как из дебажат.
...
Рейтинг: 0 / 0
Как узнать с помощью какого роута пришли ?
    #39162992
ProBiotek
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
handmadeFromRu,

На вьюхе мне нужно узнать по какому роуту мы пришли.

Пока делаю так:
Код: c#
1.
string mainRoute = this.Request.CurrentExecutionFilePath.Split(new char[] {'/'}).First(x=>!string.IsNullOrWhiteSpace(x));



Хотелось бы найти более техническое решение, вида:
Код: c#
1.
((System.Web.Mvc.MvcHandler)this.Context.Handler).RequestContext.RouteData.
...
Рейтинг: 0 / 0
Как узнать с помощью какого роута пришли ?
    #39163019
Фотография Konst_One
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
а в Referer ничего нет?
...
Рейтинг: 0 / 0
Как узнать с помощью какого роута пришли ?
    #39163027
handmadeFromRu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
оно?
Код: c#
1.
2.
3.
@{
var id = ViewContext.RouteData.Values["id"];
}
...
Рейтинг: 0 / 0
Как узнать с помощью какого роута пришли ?
    #39163124
ProBiotek
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
handmadeFromRu,

К сожалению нет. Похоже я опять не четко выразился :)

Имеем следующую запись:
routes.MapActionRoute("user/list", "MyUsers", "GetList", namespaces: new string[] { "My.Web.Controllers" });

Мне нужно получить эту часть
http://localhost:33333/ User /list

Эта команда это решает в принципе:
string mainRoute = this.Request.CurrentExecutionFilePath.Split(new char[] {'/'}).First(x=>!string.IsNullOrWhiteSpace(x));


А ваш вариант возвращает "GetList"

PS. Можете начинать кидать в меня грязь :)
Я догадываюсь что мой подход в работе может быть не правильным. Возможно мне нужно как-то по другому рисовать вьюху, в зависимости от того в какой части приложения мы находимся (сейчас, как видите, идет проверка по первому куску в адресной строке).
Возможно мне помогут "Области" (Area).
...
Рейтинг: 0 / 0
Как узнать с помощью какого роута пришли ?
    #39163503
handmadeFromRu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ProBiotek,

то что ты хочешь взять эт строка и не более, по который выбирается конкретный экшен. парси как есть. Либо пиши задачу в целом для чего , может кто подскажет вариант
...
Рейтинг: 0 / 0
Как узнать с помощью какого роута пришли ?
    #39163713
ProBiotek
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ок. Задача следующая.

В зависимости от того, в какой "области находится пользователь" отрисовывать менюшку нужно по разному.
За отрисовку менюшки отвечает частичное представление. Как бы идея в том, чтобы всю логику отрисовки данной менюшки выделить в одно место.


Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
@model ....

@{
string mainRoute = this.Request.CurrentExecutionFilePath.Split(new char[] {'/'}).First(x=>!string.IsNullOrWhiteSpace(x));
}


switch (partRoute)
    {
        case "user":
            {
                <div class="row">
				...
					<li><a href="...">Список документов</a></li>
				...
                </div>
            }
            break;
		...
	}



Есть более правильное решение данной задачи ?
...
Рейтинг: 0 / 0
Как узнать с помощью какого роута пришли ?
    #39163718
Фотография Konst_One
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
может через layout + sitemap ?

https://habrahabr.ru/post/175431/
...
Рейтинг: 0 / 0
12 сообщений из 12, страница 1 из 1
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Как узнать с помощью какого роута пришли ?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]