AutoCompleteExtender не работает для WebService, размещенного на IIS 7 - PullRequest
2 голосов
/ 03 сентября 2010

В моем проекте есть файл веб-службы, в котором есть веб-метод, который используется для AutoCompleteExtender и который отлично работает, когда я отлаживаю его из VS.

Но когда я публикую и размещаю его на IIS, он не работает должным образом.

Однако я протестировал метод веб-сервиса напрямую, набрав URL, и он дал желаемый результат.

Нужна ли специальная настройка в IIS, чтобы она работала, или нужно установить какое-либо свойство AutoCompleteExtender?

Ответы [ 6 ]

1 голос
/ 26 апреля 2011

У меня была эта проблема, когда я перемещал сайт из Кассини в IIS7.5. После долгих копаний пришлось добавить следующее в файл web.config в разделе system.webServer. Надеюсь, это поможет.

<modules runAllManagedModulesForAllRequests="true">
      <remove name="ScriptModule" />
      <add name="ScriptModule" preCondition="managedHandler" type="System.Web.Handlers.ScriptModule, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
    </modules>

<handlers>
  <remove name="ScriptHandlerFactory"/>
  <add name="ScriptHandlerFactory" verb="*" path="*.asmx" preCondition="integratedMode" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
</handlers>
0 голосов
/ 01 января 2019

Я столкнулся с той же проблемой.AutoCompleteExtender не работал после размещения в IIS 7 Windows Server 2008 R2.

Изменение «управляемого режима конвейера» пула приложений с «интегрированного» на «классический» сработало для меня.Эту настройку можно выполнить, выбрав пул приложений -> выберите Базовая настройка.

Спасибо.

0 голосов
/ 05 марта 2013

Попробуйте ... это

Перейдите для запуска> Выполнить> inetmgr>

В боковой панели соединений .. выберите пулы приложений

выберите пул приложений, который вы должны иметьназначенный при развертывании этого проекта в iis (чтобы проверить, перейдите ли вы на сайты> на панели соединений ... и щелкните правой кнопкой мыши на развернутом веб-сайте и выберите «Управление веб-сайтом»> «Дополнительные настройки», затем в верхней части вы увидите пул приложений)

затем вернитесь и выберите этот конкретный пул приложений в пулах приложений на панели соединений. Щелкните правой кнопкой мыши по этому конкретному пулу приложений и выберите дополнительные параметры. Найдите модель процесса в ней, выберите удостоверение, просмотрите его и перейдите к встроенной учетной записи.и выберите локальную систему ....... затем нажмите ОК ... и выйдите из нее ...

Я думаю, что это сработает .. это сработало для меня .....

0 голосов
/ 24 февраля 2011

Это не проблема IIS или Ath. Это ошибка на самом деле (я думаю). В вашей функции в webservice для возврата массива строк проверьте имена параметров или аргументы функции. Имя строкового параметра должно быть prefixText, а имя поля int - count.

И эти два параметра должны быть для ваших функций в веб-сервисе.

как это

[WebMethod]
  public string[] getCountry(string prefixText, int count)
    {
        ......
....
return ...
    }
0 голосов
/ 13 декабря 2010

Попробуйте изменить порядок обработчиков (удалить, затем добавить). В этом примере я удалил все, кроме обработчика AJAX / script.

<system.webServer>
  <modules runAllManagedModulesForAllRequests="true" />
  <handlers>
    <remove name="WebServiceHandlerFactory-Integrated"/>
    <remove name="WebServiceHandlerFactory-ISAPI-2.0"/>
    <remove name="WebServiceHandlerFactory-ISAPI-2.0-64"/>
    <remove name="WebServiceHandlerFactory-ISAPI-4.0_32bit"/>
    <remove name="WebServiceHandlerFactory-ISAPI-4.0_64bit"/>
    <!--<add name="WebServiceHandlerFactory-Integrated-4.0" ...</handlers> 
0 голосов
/ 10 декабря 2010

После обновления с ASP.NET 3.5 до 4.0 у меня возникла та же проблема, и я не могу заставить работать расширитель.Из firefox и firebug я получаю 500 Внутренняя ошибка сервера с сообщением

System.InvalidOperationException: Формат запроса недействителен: application / json;кодировка = UTF-8.в System.Web.Services.Protocols.HttpServerProtocol.ReadParameters () в System.Web.Services.Protocols.WebServiceHandler.CoreProcessRequest ()

Я протестировал параметры web.config, предложенные http://msdn.microsoft.com/en-us/library/bb763183.aspx, но получаю ошибки конфигурации.

...