none
Инициализация javascript объекта при помощи c# RRS feed

  • Общие обсуждения

  • Всем добрый день!

    Честно, я сам не знаю, правильно ли это или нет, поэтому и решил спросить.  Нормально ли писать так?

    <script>
       var personJSON = @Html.Raw(Json.Encode(Model.person));
    </script>
    

    Очень часто стал попадаться на глаза, подобного рода код.

    Что-то мне подсказывает, что смешивать c# и js не правильно, но с другой стороны если такая инициализация происходит во вьюшке, то почему бы и нет.

    Или лучше получить необходимые данные другим запросом?

    Хотел узнать Ваше ЗА и ПРОТИВ!

    Спасибо. 

    6 февраля 2014 г. 5:40

Все ответы

  • Однозначного ответа нет, в целом это плохо. Лучшая практика – разделение кода JS. Ели у вас это очень маленький сценарий, то можно (а иногда в целях повышения производительности, хотя тогда можно всю разметку на сервере создавать). Но если надо писать подобное в многих местах, то это уже очень плохо. Нужно задуматься об отделениии кода JS. Т.е. даные JS (обычно в виде JSON) запрашиваются у сервиса при загрузке страницы.

    Сделаем содержимое сообщества лучше, вместе!

    6 февраля 2014 г. 5:58
    Модератор