Вызов компонента .NET из классического ASP - web.config не найден - PullRequest
1 голос
/ 03 августа 2010

У меня есть классический веб-сайт ASP (да, он все еще существует), который должен вызывать .NET DLL, зарегистрированную для взаимодействия COM.

Простой тест VBScript показывает, что компонент установлен правильно.

Когда страница .asp запускается, она правильно создает компонент, но когда вызывается метод, появляется сообщение об ошибке для конкретного приложения, которое заставляет меня поверить, что web.config не найден / не обработан.

Конкретно (хотя, вероятно, не очень уместно в ответ), я получаю

Указанный аргумент вышел из диапазон допустимых значений. Имя параметра: Политика «ClientPolicy» не является настроено в системе

когда компонент .NET, в свою очередь, выполняет вызов веб-службы с использованием WSE3. Web.config включает в себя соответствующий файл политики со строкой вроде:

<policy fileName="PolicyFile.config"/>

Я думаю, что проблема в том, читается ли web.config вообще, когда обрабатывается классическая страница ASP, и, в свою очередь, вызывает .NET DLL, для которой нужен файл .config, если да, то как этот конфигурационный файл должен называться и где должен быть найден, и если нет, как можно предоставить информацию о конфигурации.

Немного усложняет вопрос: должен ли внешний файл конфигурации, на который ссылается конфигурация WSE3, находиться в том же каталоге.

1 Ответ

0 голосов
/ 03 августа 2010

Я не думаю, что вы можете установить готовый конфигурационный файл для классического ASP, и действительно сложно создать конфигурационный файл для DLL (именно этим и является ваш COM-компонент). Лучше всего либо настроить файл machine.config, либо свернуть свое собственное устройство чтения конфигурационных файлов.

Редактировать: или сохранить информацию в global.asa и передать ее компоненту .NET.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...