Улучшение читаемости генерации URL Asp.NET MVC / Javascript - PullRequest
0 голосов
/ 22 сентября 2011

Мне нужно создать URL для использования в JavaScript.Я не думаю, что мое текущее решение является очень читабельным.

//Navigation during load: Id from MVC or hash or zero.
var m_departmentId = <%= ViewContext.RouteData.Values["id"] ?? 0 %>;
if(0 == m_departmentId)
{            
    var hash = location.hash;            
    //Only one hash value
    var id = parseInt(hash.substring(2));

    //If it's a real Id, use it.
    if (!isNaN(id)) {
        m_departmentId = id;

    }
}

var gridUrl = '<%= Url.Action("GetEmployees", "Company", new { area = "" }) %>/' + m_departmentId;

Этот скрипт находится в верхней части javascript моей страницы, где я транслирую aspnet-переменные в js-переменные.

Можно лиизбавиться от первого javascript?
Можно ли улучшить читаемость последней строки?Имхо, это довольно отвратительно, особенно в моей странице javascript.
Другие улучшения?


Улучшение 1:

var gridUrl = '<%= Url.Content("~/Company/GetEmployees/") }) %>' + m_departmentId;

T4MVC не работает, когдадействие было действием по умолчанию для маршрута, потому что действие было удалено из пути, когда аргумент действия не использовался.

1 Ответ

2 голосов
/ 22 сентября 2011

Я думаю, вам нужен JavaScript для хэша. Вы не можете читать хэши на стороне сервера.

T4MVC может помочь вам в создании "некрасивого" URL. Это, по крайней мере, избавит от волшебных строк (все еще не могу поверить, что они пошли по этому пути с UrlHelper).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...