Я протестировал локальный запуск моего сервера узлов и обнаружил, что ngOnInit()
является подходящим местом для запуска кода навигатора. ngOnInit()
будет вызываться на стороне сервера, но будет снова вызываться в браузере, поэтому вам нужно проверить правдивость навигатора:
ngOnInit() {
if (this.window && this.window.navigator) {
// do stuff
}
}
Стоит отметить, что я использую оконный провайдер получить доступ к окну -
constructor(@Inject(WINDOW) private window: any) { }
Не используйте оператор "using" с вашим текстовым контентом. Пожалуйста, обратитесь к этому сообщению: Утилизация DataContext
Когда вы используете блок using ()
, он вызывает Dispose ()
на все, что вы положили в его инициализатор (в данном случае, ваш контекст). Когда контекст LINQ to SQL удаляется, сущности, созданные с его помощью, также являются. Я бы предложил создать переменную экземпляра в вашей форме
для контекста и вставить код в вашу функцию
m Dispose (bool)
(она находится в ] Файл Designer.cs
) для удаления контекста.
Есть причина, по которой вы не можете поддерживать объект DataContext дольше, возможно, удерживайте его в качестве ресурса на странице. Обычно вы бы не хотели, чтобы DataContext работал слишком долго, однако, если бы он использовался только для запросов, относящихся к текущей странице, и располагался на странице, которая может быть хорошим компромиссом.
Вы бы хотели быть осторожным в многопользовательском режиме. среда, в которой значения бэкэнда, представленные в текстовом тексте данных, быстро изменяются. Тем не менее, я думаю, что расписание ТВ не меняется быстро.
На самом деле есть веские причины использовать эти объекты отдельно от контекста данных. как насчет передачи объектов обратно в вызов веб-службы?