Изменение источника данных для строки подключения строго типизированного набора данных - PullRequest
1 голос
/ 12 января 2009

Вот два вопроса, касающихся изменения источника данных для строго типизированной строки соединения набора данных.

При развертывании моего приложения в папку «Данные приложения» развертывается облегченная база данных (в форме Microsoft Access). У меня есть строго типизированный набор данных, который обернут вокруг этого. Поэтому вопрос заключается в том, как изменить следующий код app.config:

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
    <configSections>
    </configSections>
    <connectionStrings>
        <add name="XTrace.Properties.Settings.Timer_DBConnectionString"
            connectionString="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=&quot;|DataDirectory|\Timer DB.mdb&quot;;Persist Security Info=True"
            providerName="System.Data.OleDb" />
    </connectionStrings>
</configuration>

Чтобы сделать его прочитанным из копии папки Application Data?

Я прочитал из SO и из других источников, что лучше всего использовать app.config или web.config для управления строкой соединения. Но поскольку app.config скомпилирован в форму Windows, как он предполагает гибкость, позволяющую изменять строку подключения во время развертывания? Я не говорю о веб-приложении, потому что понимаю, что веб-приложение может распространять файл web.config, и из этого файла вы можете изменить строку подключения.

Ответы [ 3 ]

5 голосов
/ 12 января 2009

При развертывании приложения Windows Forms у вас может быть файл app.config.

yourproject.exe дает вам файл yourproject.exe.config, который является файлом app.config.

1 голос
/ 11 декабря 2009

Вместо изменения файла .config вам лучше добавить новое свойство строки подключения во время выполнения и использовать TableAdapterManager. Пожалуйста, прочитайте больше на: http://rajmsdn.wordpress.com/2009/12/09/strongly-typed-dataset-connection-string/

0 голосов
/ 08 декабря 2013

Для библиотек классов: настройки каждого проекта в app.config также должны быть изменены в файле .settings. Это означает: если вы изменяете только app.config, вы должны проверить Project -> Properties. В VS2012 изменения между app.config и файлом .settings немедленно отображаются, и предлагается возможность принять эти изменения. Без этого (поэтому измените только файл app.config) изменения не вступят в силу.

Настройки встроены в библиотеку классов (пример ниже), поэтому при ссылке на нее нет файла .config.

Class library with embedded changes

...