Я провел небольшое исследование и наткнулся на это: http://msdn.microsoft.com/en-us/library/ms228245.aspx
Так что, если я правильно понимаю, в конечном итоге это включает в себя некоторые .dll для использования в проекте, например:
<add assembly="System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/>
И я предполагаю, что разница в том, что если вы сделаете это с помощью configSections, вы можете установить некоторые параметры, создав «имя» позже в webconfig (или другом конфиге) как элемент xml. Это правильно, или я что-то упустил?
Кроме того, я заметил, что я могу удалить configSections из web.config веб-сайта, и он будет работать нормально, в частности, следующие configSections:
<configSections>
<sectionGroup name="system.web.extensions" type="System.Web.Configuration.SystemWebExtensionsSectionGroup, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35">
<sectionGroup name="scripting" type="System.Web.Configuration.ScriptingSectionGroup, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35">
<section name="scriptResourceHandler" type="System.Web.Configuration.ScriptingScriptResourceHandlerSection, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" requirePermission="false" allowDefinition="MachineToApplication"/>
<sectionGroup name="webServices" type="System.Web.Configuration.ScriptingWebServicesSectionGroup, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35">
<section name="jsonSerialization" type="System.Web.Configuration.ScriptingJsonSerializationSection, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" requirePermission="false" allowDefinition="Everywhere"/>
<section name="profileService" type="System.Web.Configuration.ScriptingProfileServiceSection, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" requirePermission="false" allowDefinition="MachineToApplication"/>
<section name="authenticationService" type="System.Web.Configuration.ScriptingAuthenticationServiceSection, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" requirePermission="false" allowDefinition="MachineToApplication"/>
</sectionGroup>
</sectionGroup>
</sectionGroup>
</configSections>
Я где-то читал, что вы можете сделать это, и он все еще будет работать, потому что configSections также был определен по умолчанию в machine.config. Так зачем определять это снова в web.config веб-сайта? Я предполагаю переопределить machine.config с некоторыми пользовательскими настройками? Можно ли как-нибудь определить, какое содержимое по умолчанию в файле machine.config?