RegisterStartupScript и порядок выполнения

Главные Преимущества:

  1. Абстракция Базы данных
  2. центральный API менталитет дизайна
  3. Высокий уровень == Меньше для волнения о на фундаментальном уровне (его мысль для Вас)

я должен сказать, работающий с ORM действительно эволюция управляемых базой данных приложений. Вы волнуетесь меньше о шаблонном SQL, который Вы всегда пишете, и больше о том, как интерфейсы могут сотрудничать для создания очень простой системы.

я люблю не иметь необходимость волноваться о ВНУТРЕННЕМ ОБЪЕДИНЕНИИ и ИЗБРАННОМ КОЛИЧЕСТВЕ (*). Я просто работаю в своей абстракции высокого уровня, и я заботился об абстракции базы данных одновременно.

Однако я никогда действительно не сталкивался с проблемой, куда я должен был выполнить тот же код больше чем одной системы баз данных за один раз реалистично. Однако но это вовсе не значит тот случай не существует, это - очень настоящая проблема для некоторых разработчиков.

5
задан Nick 16 September 2009 в 21:12
поделиться

2 ответа

Со страницы MSDN для RegisterStartupScript :

Блоки сценария запуска, зарегистрированные с помощью RegisterStartupScript не гарантированно выводится в том же порядке, в котором они зарегистрированы. Если порядок блоков сценария запуска важен, используйте объект StringBuilder , чтобы собрать блоки сценария в одну строку, а затем зарегистрируйте их все как один сценарий запуска.

После их визуализации на страницу фактическое выполнение скриптов обрабатывается браузером и не имеет ничего общего с элементом управления ScriptManager . Взглянув на опубликованный вами пример, браузер должен выполнять их в том порядке, в котором они написаны. Может ли ваша функция EndScript вызываться чем-то еще на странице? Кроме того, если вы используете какие-либо обратные вызовы, время завершения обратного вызова не определено. Можете ли вы привести пример кода, который есть в каждом из этих сценариев?

6
ответ дан 14 December 2019 в 04:43
поделиться

Показанный вами результат гарантированно запускается в указанном порядке.

Возможно, что EndScript начнет выполняться до того, как SomeScriptX () будет завершили свою работу, если SomeScriptX вызовет setTimeout изнутри своих тел.

Или, возможно, «вызовы других функций ..» вызывают EndScript () где-то глубоко.

В любом случае, если вы можете гарантировать, что ScriptManager отображает точный порядок вывода, тогда JavaScript будет выполнять их в этом порядке.

2
ответ дан 14 December 2019 в 04:43
поделиться
Другие вопросы по тегам:

Похожие вопросы: