Добрый вечер. Хочу сделать Singlton для подключения к БД Sqlite. Чтобы не использовать по 100 раз код подключения, тк таких методов много. Подскажите как это сделать ? Код одного из запросов ниже
{
{
string databaseName = @"eurocar31.db";
SQLiteConnection connection =
new SQLiteConnection(string.Format("Data Source={0};", databaseName));
connection.Open();
SQLiteCommand command = new SQLiteCommand();
command.Connection = connection;
command.CommandText = "UPDATE Predoxraniteli SET cena =\"" + pr9.Text + "\" WHERE id = " + pr10.Text + ";";
SQLiteDataReader reader = command.ExecuteReader(); int index = 0;
while (reader.Read())
{
index = index + 1;
}
connection.Close();
}
dataGridView5.Rows.Clear();
getPred();
}
Вот пример реализован синглетон, посмотрите, метод GetConnection создает обьект один раз, после того он будет отдавать обьект ранее создан.
public class ConnectionDb
{
private static SQLiteConnection connection = null;
private static SQLiteCommand command = null;
private static string filePath = AppDomain.CurrentDomain.BaseDirectory + "/Database/ItemsDb.sqlite";
/// <summary>
/// the method returns the link to the database
/// </summary>
/// <returns></returns>
public static SQLiteConnection GetConnection()
{
if (connection == null)
{
if (!File.Exists(filePath))
SQLiteConnection.CreateFile(filePath);
connection = new SQLiteConnection($"Data Source={filePath};Version=3;");
connection.Open();
string query = "Create table if not exists `Items`( `id` INTEGER NOT NULL,`Name` varchar(30) NOT NULL, `Type` varchar(30) NOT NULL, PRIMARY KEY(`id`))";
command = new SQLiteCommand(query, connection);
command.ExecuteNonQuery();
}
return connection;
}
}
/// <summary>
/// The method delete existing element
/// </summary>
/// <param name="id"></param>
/// <returns></returns>
public bool Delete(int id = 0)
{
try
{
var query = $"Delete from `Items` where `id` = '{id}'";
command = new SQLiteCommand(query, ConnectionDb.GetConnection());
return Convert.ToBoolean(command.ExecuteNonQuery());
}
catch
{
return false;
}
}
Виртуальный выделенный сервер (VDS) становится отличным выбором
Хочу связать DataGridView с какой-то коллекцией(например List)Чтоб скажем изменил я что-то в DataGridView и в списке автоматически поменялось
Проблема, При попытке компиляции дает с строке с overlaycanvas ошибку "Класс overlaycanvas не найден"
Нужно сделать так чтобы функция в js брала рандомно какое-то из имён в перечне, который находится уже изначально в текстовом файлеИ после того...