В современных библиотеках доступа к данным применяются классы (обычно называемые
Makes). Добавьте в проект новую папку по имени Models и поместите в нее два файла, Car.cs и CarViewModel.cs, со следующим кодом:// Car.cs
namespace AutoLot.Dal.Models
{
public class Car
{
public int Id { get; set; }
public string Color { get; set; }
public int MakeId { get; set; }
public string PetName { get; set; }
public byte[] TimeStamp {get;set;}
}
}
// CarViewModel.cs
namespace AutoLot.Dal.Models
{
public class CarViewModel : Car
{
public string Make { get; set; }
}
}
На заметку!
Если вы не знакомы с типом данныхTimeStamp в SQL Server (который отображается на byte[] в С#), то беспокоиться об этом не стоит. Просто знайте, что он используется для проверки параллелизма на уровне строк и раскрывается вместе с Entity Framework Core.Новые классы будут применяться вскоре.
Добавление класса InventoryDal
Далее добавьте новую папку по имени DataOperations
InventoryDal.cs и измените класс на public. В этом классе будут определены разнообразные члены, предназначенные для взаимодействия с таблицей Inventory базы данных AutoLot. Наконец, импортируйте следующие пространства имен:using System;
using System.Collections.Generic;
using System.Data;
using AutoLot.Dal.Models;
using Microsoft.Data.SqlClient;
Добавление конструкторов
Создайте конструктор, который принимает строковый параметр (connectionString
namespace AuoLot.Dal.DataOperations
{
public class InventoryDal
{
private readonly string _connectionString;
public InventoryDal : this(
@"Data Source=.,5433;User Id=sa;Password=P@ssw0rd;
Initial Catalog=AutoLot")
{
}
public InventoryDal(string connectionString)
=> _connectionString = connectionString;
}
}
Открытие и закрытие подключения
Добавьте переменную уровня класса, которая будет хранить подключение, применяемое кодом доступа к данным. Добавьте также два метода: один для открытия подключения (OpenConnection
CloseConnection). В методе CloseConnection проверьте состояние подключения и если оно не закрыто, тогда вызовите метод Close на объекте подключения. Вот как выглядит код:private SqlConnection _sqlConnection = null;
private void OpenConnection
{
_sqlConnection = new SqlConnection
{
ConnectionString = _connectionString
};
_sqlConnection.Open;
}
private void CloseConnection
{
if (_sqlConnection?.State != ConnectionState.Closed)
{
_sqlConnection?.Close;
}
}
Бьёрн Страуструп , Ирина Сергеевна Козлова , Бьерн Страуструп , Валерий Федорович Альмухаметов
Программирование, программы, базы данных / Базы данных / Программирование / Учебная и научная литература / Образование и наука / Книги по IT