Почему я не могу добавить это в machine.config

Я хотел бы добавить этот раздел в свой machine.config точно так же, как предлагают многие статьи и Microsoft:

  <configuration>
    <system.net>
       <connectionManagement>
         <add name = "www.contoso.com" maxconnection = "4" />
         <add name = "*" maxconnection = "2" />
       </connectionManagement>
     </system.net>
 </configuration>

http://msdn.microsoft.com/en-us/library/aa903351%28v=vs.71%29.aspx http://geekswithblogs.net/StuartBrierley/archive/2009/09/30/tuning-iis---machine.config-settings.aspx

Но как только я это сделаю, я получаю это исключение при попытке открыть страницу, размещенную в IIS на том же компьютере:

Сообщение об ошибке парсера: Неизвестный раздел конфигурации system.net.

Ошибка источника:

Line 9:      settings that differ from their defaults.
Line 10: --><configuration>
Line 11:  <system.net>
Line 12:          <connectionManagement>
Line 13:              <add address="*" maxconnection="24" />

Исходный файл: C: \ WINDOWS \ Microsoft.NET \ Framework64 \ v2.0.50727 \ Config \ machine.config

Строка: 11

В чем проблема и как мне изменить файл machine.config, чтобы я наконец мог контролировать значение maxconnection?


person dexter    schedule 31.03.2011    source источник
comment
Вы должны отметить ответ как принятый, даже если он ваш.   -  person João Angelo    schedule 05.12.2011


Ответы (4)


В моем файле machine.config строка 10 все еще является частью вводных комментариев. Вы их удалили?

-> предполагает, что вы, возможно, не удалили закрывающий XML-комментарий или случайно удалили открывающий токен XML-комментария. Убедитесь, что у вас есть открытие <!--

РЕДАКТИРОВАТЬ:

У вас есть открывающий xml-заголовок? тот факт, что номера строк не совпадают, кажется мне странным. Строка 9 должна быть на одну строку выше. Вот как это должно выглядеть:

<?xml version="1.0" encoding="UTF-8"?>
<!--
    Please refer to machine.config.comments for a description and
    the default values of each configuration section.

    For a full documentation of the schema please refer to
    http://go.microsoft.com/fwlink/?LinkId=42127

    To improve performance, machine.config should contain only those
    settings that differ from their defaults.
-->
person Erik Funkenbusch    schedule 31.03.2011
comment
Нет, я дважды проверил закомментированную часть. Все в порядке. Проблема, похоже, заключается в добавлении вышеупомянутого ‹system.net› ... материала - person dexter; 31.03.2011

Решением было переместить раздел конфигурации после этой строки в файле конфигурации:

  <sectionGroup name="system.net" type="System.Net.Configuration.NetSectionGroup, ...

Кажется, это помогает в этом деле.

person dexter    schedule 31.03.2011

Если вы добавляете XML в свой вопрос в файл конфигурации как есть, это проблема.

configuration должен быть (единственным) корневым элементом, вы должны добавить system.net под ним, если он не существует - под configuration.

Если он существует, добавьте раздел connectionManagement в существующий раздел system.net.

Если этот уже существует, добавьте или измените существующие теги add.

person Kieren Johnstone    schedule 31.03.2011

Убедитесь, что вы не добавляете раздел system.net перед элементом configSections.

Элемент configSections, если он присутствует в файле конфигурации, должен быть первым дочерним элементом configuration, а в machine.config вы должны определить элемент configSections.


Заявление об ограничении ответственности: я ответил на вопрос, не осознавая, что он уже задавался восемь месяцев назад и что OP уже нашел решение проблемы. Поскольку его ответ дает решение, не объясняя почему, я решил не удалять свой ответ, и теперь у меня есть отказ от ответственности, который больше, чем ответ ... Мне действительно следует уделять больше внимания.

person João Angelo    schedule 05.12.2011