Модераторы: gambit
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Хранение и защита строк подключения, Работа с config-файлом 
V
    Опции темы
Compositum
Дата 29.2.2008, 10:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Senior developer
**


Профиль
Группа: Awaiting Authorisation
Сообщений: 430
Регистрация: 6.1.2008
Где: Санкт-Петербург

Репутация: нет
Всего: 1



Visual Studio 2005. Строку подключения хочу хранить в config-файле. 
Вопрос 1:
Написал код:
Код

private void btnAddCnnStringToConfig_Click(object sender, EventArgs e)
        {
            Configuration config = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None);
            config.ConnectionStrings.ConnectionStrings.Add(new ConnectionStringSettings("MyConnectionString",
                "Server=local;Database=Builder;Password=redflower;User=sa;"));
            config.Save();
        }

Данный код по нажатию юзером кнопки должен добавить запись в config-файл. Экспериментирую....
Запускаю приложение. Нажимаю кнопку...
В каталоге bin\Debug\ имеется файл WindowsADO.vshost.exe.config. В нем появляется запись о подключении. Но она пропадает как только я закрываю приложение. Почему так происходит? 
__________________________________________________________________________________________
N.B. Если нажимать на кнопку несколько раз - Exaption не получаю, но и новые записи строки подключения не появляются. Т.о. беспокоиться о дублировании одноименных строк подключения не приходится.


PM   Вверх
Compositum
Дата 29.2.2008, 10:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Senior developer
**


Профиль
Группа: Awaiting Authorisation
Сообщений: 430
Регистрация: 6.1.2008
Где: Санкт-Петербург

Репутация: нет
Всего: 1



Вопрос 2:
В config-файл внес измения. Написал такой код:
Код

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
  <connectionStrings>
    <EncryptedData/>
  </connectionStrings>

  <protectedData>
    <providers>
      <add name="MyProvider"
           type="System.Configuration.RsaProtectedConfigurationProvider"
           keyContainerName="MyKeys"
           useMashineContainer="true" />
    </providers> 

  <protectedDataSection>
    <add name ="ConnectionStrings"
     provider="MyProvider"
     inheritedByChildren="false"/>
  </protectedDataSection>
  </protectedData>
  
</configuration>

Однако получаю такую инфу:

Код

Предупреждение    1    Элемент 'connectionStrings' имеет недопустимый дочерний элемент 'EncryptedData'. Список ожидаемых элементов: 'add, remove, clear'.    D:\Мои документы\Visual Studio 2005\Projects\WindowsADO\WindowsADO\App.config    4    6    WindowsADO
Сообщение    2    Не удалось найти информацию о схеме для элемента 'protectedData'.    D:\Мои документы\Visual Studio 2005\Projects\WindowsADO\WindowsADO\App.config    7    4    WindowsADO
Сообщение    3    Не удалось найти информацию о схеме для элемента 'providers'.    D:\Мои документы\Visual Studio 2005\Projects\WindowsADO\WindowsADO\App.config    8    6    WindowsADO
Сообщение    4    Не удалось найти информацию о схеме для элемента 'add'.    D:\Мои документы\Visual Studio 2005\Projects\WindowsADO\WindowsADO\App.config    9    8    WindowsADO
Сообщение    5    Не удалось найти информацию о схеме для атрибута 'name'.    D:\Мои документы\Visual Studio 2005\Projects\WindowsADO\WindowsADO\App.config    9    12    WindowsADO
Сообщение    6    Не удалось найти информацию о схеме для атрибута 'type'.    D:\Мои документы\Visual Studio 2005\Projects\WindowsADO\WindowsADO\App.config    10    12    WindowsADO
Сообщение    7    Не удалось найти информацию о схеме для атрибута 'keyContainerName'.    D:\Мои документы\Visual Studio 2005\Projects\WindowsADO\WindowsADO\App.config    11    12    WindowsADO
Сообщение    8    Не удалось найти информацию о схеме для атрибута 'useMashineContainer'.    D:\Мои документы\Visual Studio 2005\Projects\WindowsADO\WindowsADO\App.config    12    12    WindowsADO
Сообщение    9    Не удалось найти информацию о схеме для элемента 'protectedDataSection'.    D:\Мои документы\Visual Studio 2005\Projects\WindowsADO\WindowsADO\App.config    15    4    WindowsADO
Сообщение    10    Не удалось найти информацию о схеме для элемента 'add'.    D:\Мои документы\Visual Studio 2005\Projects\WindowsADO\WindowsADO\App.config    16    6    WindowsADO
Сообщение    11    Не удалось найти информацию о схеме для атрибута 'name'.    D:\Мои документы\Visual Studio 2005\Projects\WindowsADO\WindowsADO\App.config    16    10    WindowsADO
Сообщение    12    Не удалось найти информацию о схеме для атрибута 'provider'.    D:\Мои документы\Visual Studio 2005\Projects\WindowsADO\WindowsADO\App.config    17    6    WindowsADO
Сообщение    13    Не удалось найти информацию о схеме для атрибута 'inheritedByChildren'.    D:\Мои документы\Visual Studio 2005\Projects\WindowsADO\WindowsADO\App.config    18    6    WindowsADO



Затем через командную строку попытался зарегистрировать ключи:

Код

aspnet_regiis -pc "MyKeys" -exp

Получаю окно с ошибкой:

---------------------------
aspnet_regiis
---------------------------
Windows не удалось найти 'aspnet_regiis'. Проверьте, что имя было введено правильно, и повторите попытку. Чтобы выполнить поиск файла, нажмите кнопку "Пуск", а затем выберите команду "Найти".
---------------------------
ОК   
---------------------------

Всё делаю по книге Сахила Малика.... Не могу понять в чем дело....

PM   Вверх
Compositum
Дата 29.2.2008, 12:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Senior developer
**


Профиль
Группа: Awaiting Authorisation
Сообщений: 430
Регистрация: 6.1.2008
Где: Санкт-Петербург

Репутация: нет
Всего: 1



Задача решена
PM   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
stab
mr.DUDA
Exception

Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов.

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, stab, mr.DUDA, Exception.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Базы данных под .NET | Следующая тема »


 




[ Время генерации скрипта: 0.0871 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.