Как изменить строку подключения в data set visual studio
база данных Oracle на моем компьютере-отлично работает .
когда я установил на компьютере клиента (который подключается к его базе данных Oracle) -
мне нужно изменить строку подключения на DataSet.xsd file-но как это сделать ?
есть ли xml-файл ? Или конфигурационный файл ?
при создании набора данных с помощью мастера вам будет предложено создать и сохранить ConnectionString. Посмотрите в своем приложении.Config
вы также можете открыть набор данных и выбрать TableAdapter, который вы хотите обновить, щелкните правой кнопкой мыши и перейдите к свойствам.
здесь вы увидите свойство" соединение", которое вы можете легко изменить на настройки в вашем интернете.файл конфигурации или введите новые сведения о соединении.
У меня была похожая ситуация. Я уже создал много наборов, и каждый из них записал свою собственную строку подключения в коде. A также вручную взаимодействовал с базой данных через connectionstring, которую я разместил в приложении.конфигурационный файл. Поэтому обновлять все это при развертывании на пока неизвестном сервере было бы больно; но ручное изменение всех этих connectionstrings также отпугнуло меня. В конце концов я добавил "тестовый" tableAdapter к.страница дизайна xsd. и создал новую строку подключения-на этот раз указание его размещения в приложении.конфигурационный файл. Потом с помощью магии. все tableAdapters теперь использовали эту строку connectionstring - просто удалите тестовый объект и вуаля!
вы можете использовать как мой код: Обратите внимание, что DataSet может изменять строку подключения по приложению.config, но вы можете изменить строку подключения по TableAdapter, как показано ниже:
просто запросите учетные данные сервера при запуске приложения один раз или используйте окно настроек и используйте этот метод:
получить строку подключения из объекта SqlConnection или сформировать строку подключения из отдельных данных и сделать это так:
параметры приложения, которые являются приложением, а не пользовательской областью, также могут быть установлены. Но только программно, по коду. Мне это подходит. Надеюсь, это поможет вам!
для WinForm его очень просто. пожалуйста, см. Ниже фотографии
Если набор данных создан, выберите значок ниже столбцов, выбранных для отображения. Он заканчивается TableAdapter, перейдите к свойствам. он показывает текущую строку подключения, просто измените его.
Я искал способ изменить connectionsString глобально, и, наконец, я нахожу способ сделать это. Открыть набор данных.xsd с помощью программы notepad, а затем замените старую connectionstring на новую
строка подключения иногда сохраняется в настройках приложения (не веб-проекты: win-формы, библиотеки. ). Щелкните правой кнопкой мыши проект > свойства > параметры. Затем можно изменить строку подключения.
для достижения наилучших результатов, вы можете сначала открыть файл app.config (для веб-проектов) и измените строку подключения. После этого откройте параметры проекта, чтобы "позволить visual studio обнаружить изменения в строке подключения и обновить ее автоматически".
строки подключения в Visual Studio приложениях сохраняются в файле конфигурации приложения (также называемом параметрами приложения) или жестко запрограммированы непосредственно в приложении. Сохранение строк подключения в файле конфигурации приложения упрощает процесс обслуживания приложения. Если строку подключения необходимо изменить, вы можете обновить ее в файле параметров приложения (сравните это с ее изменением в исходном коде и повторной компиляцией приложения).
Хранение конфиденциальных сведений (например, пароля) в строке подключения может повлиять на безопасность приложений. Строки подключения, сохраненные в файле конфигурации приложения, не шифруются и не скрываются, поэтому другой человек может получить доступ к файлу и просмотреть его содержимое. Использование встроенных средств безопасности Windows — более безопасный способ управления доступом к базе данных.
Если вы решили не использовать встроенные средства безопасности Windows и ваша база данных требует имя пользователя и пароль, вы можете опустить их в строке подключения, однако ваше приложение должно предоставлять эти данные для успешного подключения к базе данных. Например, вы можете создать диалоговое окно, которое запрашивает эти сведения у пользователя и динамически формирует строку подключения во время выполнения. При этом все равно может возникнуть угроза безопасности, если эта информация будет перехвачена при передаче в базу данных. Дополнительные сведения см. в разделе Защита сведений о соединении.
Сохранение строки подключения в мастере настройки источника данных
В мастере настройки источника данных выберите параметр сохранения соединения на странице Сохранение строки подключения в файле конфигурации приложения .
Сохранение строки подключения прямо в параметрах приложения
Изменение строк подключения, хранящихся в параметрах приложения
Вы можете изменить информацию о подключении, сохраненную в параметрах приложения, с помощью Конструктора проектов.
Порядок изменения строки подключения, сохраненной в параметрах приложения
Изменение строк подключения для наборов данных
Сведения о соединении для каждого адаптера таблицы TableAdapter можно изменить в наборе данных.
Изменение строки подключения для TableAdapter в наборе данных
- В Обозреватель решений дважды щелкните набор данных (XSD -файл) с подключением, которое требуется изменить.
- Выберите TableAdapter или запрос, имеющий подключение, которое нужно изменить.
- В окне Свойства разверните узел подключение.
- Чтобы быстро изменить строку подключения, измените свойство ConnectionString или щелкните стрелку вниз в свойстве соединения и выберите создать соединение.
Безопасность
Хранение конфиденциальных сведений (например, пароля) в строке подключения может повлиять на безопасность приложений. Использование встроенных средств безопасности Windows — более безопасный способ управления доступом к базе данных. Дополнительные сведения см. в разделе Защита сведений о соединении.
Connection strings in Visual Studio applications are saved in the application configuration file (also referred to as application settings), or hard-coded directly in your application. Saving connection strings in the application configuration file simplifies the task of maintaining your application. If the connection string needs to be changed, you can update it in the application settings file (as opposed to having to change it in the source code and recompile the application).
Storing sensitive information (such as the password) within the connection string can affect the security of your application. Connection strings saved to the application configuration file are not encrypted or obfuscated, so it may be possible for someone to access the file and view its contents. Using Windows integrated security is a more secure way to control access to a database.
If you do not choose to use Windows integrated security and your database requires a user name and password, you can omit them from the connection string, but your application will need to provide this information to successfully connect to the database. For example, you can create a dialog box that prompts the user for this information and dynamically builds the connection string at run time. Security can still be an issue if the information is intercepted on the way to the database. For more information, see Protecting connection information.
To save a connection string from within the Data Source Configuration Wizard
In the Data Source Configuration Wizard, select the option to save the connection on the Save the Connection String to the Application Configuration File page.
To save a connection string directly into application settings
Edit connection strings stored in application settings
You can modify connection information that is saved in application settings by using the Project Designer.
To edit a connection string stored in application settings
Edit connection strings for datasets
You can modify connection information for each TableAdapter in a dataset.
To edit a connection string for a TableAdapter in a dataset
- In Solution Explorer, double-click the dataset (.xsd file) that has the connection you want to edit.
- Select the TableAdapter or query that has the connection you want to edit.
- In the Properties window, expand the Connection node.
- To quickly modify the connection string, edit the ConnectionString property, or click the down arrow on the Connection property and choose New Connection.
Security
Storing sensitive information (such as a password) within the connection string can affect the security of your application. Using Windows integrated security is a more secure way to control access to a database. For more information, see Protecting connection information.
Внедрение строк соединения в код приложения может привести к появлению уязвимых мест в системе безопасности и проблем с обслуживанием. Незашифрованные строки подключения, скомпилированные в исходный код приложения, можно просматривать с помощью средства Ildasm.exe (IL Disassembler). Кроме того, после изменения строки соединения необходимо перекомпилировать приложение. По этим причинам рекомендуется хранить строки соединения в файле конфигурации приложения.
Работа с файлами конфигурации приложения
Раздел connectionStrings
Строки подключения могут храниться в виде пар "ключ/значение" в разделе connectionStrings элемента configuration файла конфигурации приложения. Дочерние элементы включают add, clear и remove.
Можно сохранить часть строки соединения в файле конфигурации и для ее дополнения во время выполнения использовать класс DbConnectionStringBuilder. Это удобно в сценариях, в которых заранее неизвестны элементы строки соединения или желательно не сохранять конфиденциальные данные в файле конфигурации. Дополнительные сведения см. в статье Connection String Builders (Построители строк подключения).
Использование внешних файлов конфигурации
Для хранения строк подключения во внешнем файле конфигурации создайте отдельный файл, содержащий единственный раздел connectionStrings. Не следует включать какие-либо дополнительные элементы, разделы или атрибуты. В данном примере показан синтаксис внешнего файла конфигурации.
В основном файле конфигурации приложения для указания полного имени и расположения внешнего файла используется атрибут configSource. В следующем примере применяется ссылка на внешний файл конфигурации с именем connections.config .
Получение строк соединения во время выполнения
Файл machine.config также содержит раздел connectionStrings, включающий строку подключения, используемую Visual Studio. При получении строк подключения из файла app.config приложения Windows с помощью имени поставщика в первую очередь загружаются строки подключений из файла machine.config, затем записи из файла app.config. Добавление ключевого слова clear сразу после элемента connectionStrings приводит к удалению из памяти всех ссылок, унаследованных от структуры данных, поэтому учитываются только строки подключений, определенные в локальном файле app.config.
Работа с классами конфигурации
Для получения строк соединения из файлов конфигурации приложения используется ConnectionStringSettingsCollection. Он содержит коллекцию ConnectionStringSettings объектов, каждый из которых представляет отдельную запись в разделе ConnectionStringSettings . Его свойства сопоставляются с атрибутами строк соединения, что позволяет получить строку соединения, указав имя строки или имя поставщика.
Свойство | Описание |
---|---|
Name | Имя строки соединения. Сопоставляется с атрибутом name. |
ProviderName | Полное имя поставщика. Сопоставляется с атрибутом providerName. |
ConnectionString | Строка подключения. Сопоставляется с атрибутом connectionString. |
Пример. Список всех строк соединения
Файл System.Configuration.dll не включается в проекты всех типов, поэтому для использования классов конфигурации может потребоваться сформировать на него ссылку. Имя и расположение файла конфигурации определенного приложения зависит от типа приложения и процесса размещения.
Пример. Извлечение строки соединения по имени
Данный пример демонстрирует способ получения строки соединения из файла конфигурации путем указания ее имени. Код создает объект ConnectionStringSettings, сопоставляя указанный входной параметр с именем ConnectionStrings. Если совпадающее имя не найдено, функция возвращает значение null ( Nothing в Visual Basic).
Пример. Извлечение строки соединения по имени поставщика
В этом примере демонстрируется способ получения строки подключения путем указания неизменяемого имени поставщика в формате System.Data.ProviderName. В коде выполняется итерация по ConnectionStringSettingsCollection и происходит возврат строки соединения для первого найденного ProviderName. Если имя поставщика не найдено, функция возвращает значение null ( Nothing в Visual Basic).
Шифрование разделов файлов конфигурации с использованием защищенной конфигурации
В приведенном ниже фрагменте файла конфигурации показан раздел connectionStrings после шифрования. В разделе configProtectionProvider задается поставщик защищенной конфигурации, который используется для шифрования и дешифрования строк подключения. Раздел EncryptedData содержит зашифрованный текст.
Поставщики защищенной конфигурации
Оба поставщика обеспечивают надежное шифрование данных. Однако, если планируется использовать один файл конфигурации на нескольких серверах, как в веб-ферме, то только RsaProtectedConfigurationProvider позволяет экспортировать ключи шифрования, применяемые для шифрования данных, и импортировать их в другой сервер. Дополнительные сведения см. в разделе Импорт и экспорт защищенных контейнеров ключей RSA для конфигурации.
Использование классов конфигурации
Пространство имен System.Security.Cryptography содержит классы, которые предоставляют дополнительные возможности шифрования и расшифровки данных. Эти классы можно использовать в том случае, если требуются криптографические службы, недоступные с использованием защищенной конфигурации. Некоторые из этих классов являются оболочками для Microsoft CryptoAPI, а другие представляют собой реализации полностью на управляемом коде. Дополнительные сведения см. в разделе Службы криптографии.
Пример App.config
Этот пример демонстрирует переключение шифрования раздела connectionStrings в файле app.config для приложения Windows. В этом примере процедура принимает имя приложения в качестве аргумента, например, «MyApplication.exe». Затем файл app.config зашифровывается и копируется в папку, которая содержит исполняемый файл с именем MyApplication.exe.config.
Строку соединения можно расшифровать только на компьютере, где она была зашифрована.
Код использует OpenExeConfiguration метод, чтобы открыть файл OpenExeConfiguration для редактирования, а GetSection метод возвращает раздел GetSection . Затем код проверяет свойство IsProtected, вызывая метод ProtectSection для шифрования раздела, если он не зашифрован. Метод UnprotectSection вызывается для расшифровки раздела. Метод Save завершает операцию и сохраняет изменения.
Для запуска кода необходимо задать ссылку на System.Configuration.dll в проекте.
Пример Web.config
В этом примере используется метод OpenWebConfiguration класса WebConfigurationManager . Обратите внимание, что в этом случае можно задать относительный путь к файлу Web.config с использованием символа "тильда". В коде должна быть ссылка на класс System.Web.Configuration .
При разрабоке программы при создании DataSet я использовал connection, в котором в качестве servername указал localhost, А когда решил запустить программу, данные для которой берутся с реального сервера, столкнулся со следующей проблемой.
Требуется, чтобы таблицы выбирались не с локальной машины, а с сервера , на котором установлен Mysql. Сначала я изменил свойства существующиего connection , исправив localhost на сетевой адрес сервера. Можно ли в визуальном редакторе изменить строку connection в существующем dataSet?
Как проще работая с программой перенастраиваться с одного сервера (скажем Localhos) на другой?
Спасибо!
Как изменить Connection в DataSet.xsd
Всем привет! Создал DataSet дизайнером, перетащил нужные таблицы. Мне нужно, задавать Connection.
Как изменить заголовки столбцов в DataSet?
Мне нужно чтобы один и тот же компонент DataGridView отображал разные таблицы и у каждого свои.
Как изменить строку подключения для Dataset'ов?
Здравсвуйте, крик отчаяния. Перечитал все темы, не могу сделать. И так: у меня есть программа, на.
Как инстанцировать объекты Connection и DataSet?
В проекте три формы. Все они обращаются за данными к одной базе (не одновременно). Как (можно ли).
При разрабоке программы при создании DataSet я использовал connection, в котором в качестве servername указал localhost, А когда решил запустить программу, данные для которой берутся с реального сервера, столкнулся со следующей проблемой.
Требуется, чтобы таблицы выбирались не с локальной машины, а с сервера , на котором установлен Mysql. Сначала я изменил свойства существующиего connection , исправив localhost на сетевой адрес сервера. Можно ли в визуальном редакторе изменить строку connection в существующем dataSet?
У DataSet нет строки connection, если я не отстал от жизни. Он вообще сам по себе и с базой-то может быть не связан вовсе.
Да вроде так и сделал, но что-то не получается. У меня один DBConnection - в нем я изменил имя сервера. Но сомнения одолевают, как будто данные берутся с localhost.
1. Я делаю поиск по "Localhost" по проекту - он много где прописан , в xml схемах.
2. На вкладке проекта Data Sources, встаю на свой dbDataSource , правой кнопкой - Configure DataSet with wizard, в появившемся окошке перехожу на previos - там указана connection string - она содержит Localhost.
3. Отключаюсь от сети - эффект не заметен. Вроде refresh использовал, запись данных. Хотя возможно и ошибаюсь, обстановка была напряженной и время было ограничено.
4. Увидев сколько всяких xml схем создает визуальный редактор - начинаешь сомневаться насколько программа контролируема. Может лучше без него?
В визарде по умолчанию connectionstring сохраняется в настройках приложения (app.config и settings.settings), можно, кстати, прописать другой connectionstring прямо в файле настроек, без редактирования исходника и компиляции. Что он в XML схемах пишет, я х/з, надо смотреть. Если localhost присутствует в пути пространства имен, то это не влияет вообще ни на что, там что угодно можно прописать.
Визуальный редактор создает dataset со строгим контролем типов, и весьма облегчает разработку. Могу ошибаться, но по-моему обычный dataset не получиться подключить как источник данных. А так, конечно можно все вручную писать, только уйдет больше времени и ошибок больше будет.
Читайте также: