Как избежать жесткого кодирования строки подключения в VB.NET приложение для windows?
Здравствуйте, я все еще новичок, так что, пожалуйста, простите мой вопрос. Я просто хочу знать, как избежать жесткого кодирования строки подключения в каждом субподрядчике vb.net. Я использую vb.net 2017 и доступ в качестве моей базы данных. У меня есть несколько подключений к моей базе данных, и я хочу знать, есть ли эффективный способ сделать это?
Ниже приведена моя строка подключения, и я помещаю ее в модуль, чтобы каждая форма, которую я сделал, могла получить к ней доступ, и мне просто нужно вызвать переменную "conSTR".
Что я уже пробовал:
Public conSTR As String = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=D:\VBactivity\PAGEANT\PAGEANT.accdb"
а ниже показано, как я использовал обл переменная
Using cons As New OleDb.OleDbConnection(conSTR) Using cmd As New OleDb.OleDbCommand With cmd .CommandText = "INSERT INTO Category (CategoryName, CatPercent) VALUES (@Category ,@CatPercent)" ', @CatPercent)" .Parameters.AddWithValue("@Category", txtCategory.Text) .Parameters.AddWithValue("@CatPercent", numCategory.Value) .Connection = cons cons.Open() cmd.ExecuteNonQuery() cons.Close() MessageBox.Show("CATEGORY HAS BEEN ADDED", "CATEGORY", MessageBoxButtons.OK, MessageBoxIcon.Information) End With End Using End Using
Maciej Los
Если conSTR является переменной публичной области видимости, вам не нужно передавать ее в процедуру. Видеть:
Область Применения - Visual Basic | Microsoft Docs[^]
Как управлять областью действия переменной - Visual Basic | Microsoft Docs[^]
Вы можете определить строку подключения в файле ap.config. Видеть: Строки подключения и конфигурационные файлы - ADO.NET | Microsoft Docs[^]
Tomas Takac
Сохраните строку подключения в конфигурационном файле: Строки подключения и конфигурационные файлы - ADO.NET | Microsoft Docs[^]
lelouch_vi 2
Спасибо, что обратили на это внимание. Теперь я уже понимаю, почему жесткое кодирование строки соединения-плохая идея. У меня уже есть строка подключения к моему app.config.