IntelliSense JavaScript в VS2008 - внешний сервис WCF - PullRequest
0 голосов
/ 23 июня 2009

Я посмотрел следующую статью, прежде чем писать эту статью, но мой сценарий немного отличается

Как получить intellisense для служб Ajax WCF?

У меня также есть исправление, примененное к VS2008, и у меня работает jquery intellisense.

В моем решении служба WCF фактически не находится внутри веб-проекта ASP.NET. У меня есть отдельные проекты для ServiceContracts, ServieImplementations и есть веб-проект, на котором размещается служба WCF.

Мое веб-приложение ASP.NET использует службу WCF. В моем файле javascript внутри веб-приложения, если я напишу следующие две строки вверху, intellisense не будет работать. (reqws - это приложение IIS, в котором размещена моя служба WCF)

/// <reference name="MicrosoftAjax.js" />
/// <reference path="http://localhost/reqws/DataManagementService.svc" />

Я даже принудительно обновил javascript intellisense в VS2008, зайдя в меню «Правка» и выбрав эту опцию. Ошибки не выкидываются.

Пожалуйста, помогите. Еще одна вещь, я фактически создал тестовый сервис WCF внутри самого моего веб-приложения и поместил следующее в мой файл javascript, и это работает. Итак, моя проблема в том, как заставить работать intellisense, когда служба WCF находится не в том же приложении или когда вы используете внешнюю службу через ScriptManager.

Ответы [ 2 ]

0 голосов
/ 22 февраля 2010

Чтобы получить отладку / intellisense /// jsdebug" />

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

Если вам нужно выйти наружу, отразите внешнюю службу внутри себя и извлеките ее с помощью scriptmanager или просто используйте сопоставление / jsdebug.

0 голосов
/ 24 июня 2009

Скотт Хансельман фактически прислал мне ответ на мой вопрос: «Попробуйте вручную извлечь файлы JavaScript из сервиса и сослаться на них».

По его предложению я попытался сгенерировать файл js с помощью http://localhost/reqws/DataManagementService.svc/jsdebug на своем компьютере и сохранил его в папке сценариев моего веб-приложения.

Я ссылался на этот файл js из файла сценария веб-приложения ASP.NET следующим образом, и intellisense работал.

/// <reference name="MicrosoftAjax.js" />
/// <reference path="~/Common/Javascript/datamanagementservice_script.js" />

Но каждый раз, когда я изменяю код WCF, мне придется генерировать этот js, заменять текущий и обновлять jscript intellisense в visual studio. Надеюсь, есть способ упростить это?

...