2010-01-12 3 views
17

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

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

Это хорошо работает на наших тестовых серверах - и сайты настраиваются одинаково (в IIS, в файловой системе и т. Д.).

Есть ли у кого-нибудь представление о том, что это будет?

ответ

18

Параметры области пользователя сохраняются в файле конфигурации, скрытом в папке C: \ Users \\ AppData \ Local \. Может быть, настройка вашего сервера запрещает .Net писать там файлы?

Есть ли у вас настройки пользовательской области? Я не думаю, что это необходимо для службы? Возможно, вы должны изменить настройки на Application Scope, и ваша проблема исправлена.

+0

Я не имею C: \ Users папку на любом сервере (ступенчатого или тест) и web.config для службы WCF не содержит AppSettings или какие-либо параметры области пользователя - мы получаем только это исключение для некоторых, а не для всех файлов .svc - есть ли что-нибудь еще, о чем вы можете думать? Благодаря! –

+0

c: \ документы и настройки \ ... возможно, для старых версий Windows? Сейчас не так много, о чем я могу думать сейчас ... –

24

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

Поэтому я бы рекомендовал людям быть осторожными, чтобы они проверяли проекты, на которые ссылается проект webservice, а также сам проект webservice, и убедитесь, что область всех настроек - это приложение, а не пользователь.

Надеюсь, что это поможет кому-то, кто пытается взломать мозг о чем-то подобном.

+0

Спасибо! Это просто избавило меня от многих неприятностей. Для всех, кто читает это, IIS, похоже, кэширует файл настроек и, несмотря на то, что несколько раз повторно развертывал мой проект WCF, удаляя файл web.config и повторно запуская IIS, он не повлиял. Только когда я прокомментировал нарушивший код, обновил его, снова перекодировал код и затем повторно развернул его, чтобы он работал. – GrandMasterFlush

+0

Я перешел к свойствам проекта -> Настройки ссылочного проекта и изменил область действия переменных на область применения. Решаемые. Благодаря! – cederlof

20

Моя проблема была проста, проверить в Settings.setting странице проекта/файл, чтобы увидеть, если столбец Scope установлен в User вместо Application:

enter image description here

+1

Это точно так же, как ответ Роберта W, но спустя 4 года ... – PTuckley

+0

@PTuckley, но есть красивая картина. :-П – Ads

0

В моем случае проблема в том, что Ссылка веб-службы имела свойство «Поведение URL», установленное на «Динамическое» вместо «Статический». После установки Static проблема исчезла.

Properties

Смежные вопросы