Возможно, вы сможете получить фактический экземпляр CLR вашего контроллера и получить имя оттуда, на ваш взгляд ...
@if (this.ViewContext.Controller is MyController)
{
}
и, возможно, убрать часть "Controller" из его имени ...как
this.ViewContext.Controller.GetType().Name.Replace("Controller", "")
PS: используется .Replace(string, string)
для простоты этого поста, но, вероятно, лучше использовать вызов .Substring(int, int)
.
РЕДАКТИРОВАТЬ: Вы также можете получить текущий контроллер из контекста Controller, если бы вы не были в представлении (хотя вы были бы в контроллере, в этом случае this.GetType()
сделал бы это.