powered by simpleCommunicator - 2.0.59     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Пользовательские секции в web.config
4 сообщений из 4, страница 1 из 1
Пользовательские секции в web.config
    #33360322
mekesha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Решил добавить в настройки свою секцию (перенес часть настроек из app.config
winform-проекта). Web.config получился такого вида:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
  <configSections>
    <section name="Connection"
type="System.Configuration.DictionarySectionHandler,System" />
  </configSections>
  <Connection>
    <add key="Server" value="DBSERVER" />
    <add key="Database" value="abcV" />
  </Connection>
  <system.web>
....
  </system.web>
</configuration>
***в описание типа секции ",System" добавил по-ходу, аналогично
примеру в MSDN
но при вызове
System.Configuration.ConfigurationSettings.GetConfig("Connection") возникает
(рантайм) исключение при создании обработчика раздела со
ссылкой на выделенную строку конфига (по описанию не выходит загрузить
сборку System... может strong-name нужно? зачем вообще ее загружать?).
Трассировка такая вот:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
Трассировка загрузки сборки: Следующая информация может быть полезна при
выяснении причин сбоя при загрузке сборки 'System'.

=== Pre-bind state information ===
LOG: DisplayName = System
 (Partial)
LOG: Appbase = file:///c:/inetpub/wwwroot/WebApplication1
LOG: Initial PrivatePath = bin
Calling assembly : (Unknown).
===

LOG: Policy not being applied to reference at this time (private, custom,
partial, or location-based assembly bind).
LOG: Post-policy reference: System
LOG: Attempting download of new URL
file:///C:/WINDOWS/Microsoft.NET/Framework/v1.1.4322/Temporary ASP.NET
Files/webapplication1/8dd84b00/b065eec7/System.DLL.
LOG: Attempting download of new URL
file:///C:/WINDOWS/Microsoft.NET/Framework/v1.1.4322/Temporary ASP.NET
Files/webapplication1/8dd84b00/b065eec7/System/System.DLL.
LOG: Attempting download of new URL
file:///c:/inetpub/wwwroot/WebApplication1/bin/System.DLL.
LOG: Attempting download of new URL
file:///c:/inetpub/wwwroot/WebApplication1/bin/System/System.DLL.
LOG: Attempting download of new URL
file:///C:/WINDOWS/Microsoft.NET/Framework/v1.1.4322/Temporary ASP.NET
Files/webapplication1/8dd84b00/b065eec7/System.EXE.
LOG: Attempting download of new URL
file:///C:/WINDOWS/Microsoft.NET/Framework/v1.1.4322/Temporary ASP.NET
Files/webapplication1/8dd84b00/b065eec7/System/System.EXE.
LOG: Attempting download of new URL
file:///c:/inetpub/wwwroot/WebApplication1/bin/System.EXE.
LOG: Attempting download of new URL
file:///c:/inetpub/wwwroot/WebApplication1/bin/System/System.EXE.

Почему же не поискать там, где он лежит:
c:\WINDOWS\Microsoft.NET\Framework\v1.1.4322\System.dll ?


Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
Пользовательские секции в web.config
    #33361600
Фотография profil
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
Пользовательские секции в web.config
    #33361914
mekesha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 profil
Ваша ссылочка больше полезна общему развитию (хотя, как для меня, использование типа
System.Web.Configuration.NameValueSectionHandler сомнительно)...

Но благодаря ей, у меня "активизировался" интерес к machine.config, где я увидел, что для описания типов секций используются таки
strong-name...
А статья "What's in ASP.NET Config Files?" (читаю локально:
ms-help://MS.MSDNQTR.2005APR.1033/cpguide/html/cpconcreatingnewsectionhandlers.htm) это подтвердила.
Так что проблема лечится вот так:
Код: plaintext
1.
2.
3.
4.
<configSections>
<section name="Connection" type="System.Configuration.DictionarySectionHandler, System, Version=1.0.5000.0, Culture=neutral,
PublicKeyToken=b77a5c561934e089"/>
</configSections>

и как верить такому примеру (а касается он конфигурации ASP.NET):
.NET Framework Developer's Guide

Creating New Configuration Sections
...
You can also define your own section that uses the same configuration handler as the <appSettings> section. For example:
<configuration>
<configSections>
<sectionGroup name="myGroup">
<sectionGroup name="nestedGroup">
<section name="mySection" type=
"System.Configuration.NameValueSectionHandler, System "/>
</sectionGroup>
</sectionGroup>
</configSections>

<myGroup>
<nestedGroup>
<mySection>
<add key="key_one" value="1"/>
<add key="key_two" value="2"/>
</mySection>
</nestedGroup>
</myGroup>
</configuration>



Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
Пользовательские секции в web.config
    #33361938
mekesha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
И моему удовлетворению не будет предела (возможно), если кто из знающих пояснит мне:
1) зачем указывать имя сборки (ведь оконное приложение обходится одним наименование типа секции, а System и так уже загружена)?
2) почему отсутствует возможность загрузки сборки по partial name?


Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
4 сообщений из 4, страница 1 из 1
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Пользовательские секции в web.config
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]