Используя dapper, как я могу вставить C# List
в базу данных. Раньше без dapper Я использовал приведенный ниже код для Вставить значение «Список» в базу данных.Как вставить список C# в базу данных с помощью Dapper.NET
try
{
connection.Open();
for (int i = 0; i < processList.Count; i++)
{
string processQuery = "INSERT INTO PROCESS_LOGS VALUES (@Id, @st_Time, @ed_Time, @td_Time)";
command = new SqlCommand(processQuery, connection);
command.Parameters.Add("Id", SqlDbType.Int).Value = processList[i].ID;
command.Parameters.Add("st_Time", SqlDbType.DateTime).Value = processList[i].ST_TIME;
command.Parameters.Add("ed_Time", SqlDbType.DateTime).Value = processList[i].ED_TIME;
command.Parameters.Add("td_Time", SqlDbType.DateTime2).Value = processList[i].TD_TIME;
dataReader.Close();
dataReader = command.ExecuteReader();
}
connection.Close();
}
catch (SqlException ex)
{
//--Handle Exception
}
Я знаком с выборки данных с использованием щеголеватый, но это моя первая попытка с помощью вставки запроса.
Я пробовал приведенный ниже код, используя Exceute
, связанный с запросом, но зацикленный с циклом; Я думаю, что используя инструмент dapper, нет необходимости в формулировке цикла.
connection.Execute(processQuery ...);
EDIT:
class ProcessLog
{
public int ID { get; set; }
public DateTime ST_TIME { get; set; }
public DateTime ED_TIME { get; set; }
public DateTime TD_TIME { get; set; }
public string frequency { get; set; }
}
Пожалуйста, консультации по этому вопросу. FYI: Я использую SQL Server 2008
Заранее спасибо.
На самом деле, мало известный факт: щеголеватый будет перебирать * для вас *; средним может быть: 'connection.Execute (« INSERT INTO PROCESS_LOGS VALUES (@A, @B) », processList);' –
@DavidH Я думал, что не будет необходимости в циклах? – Praveen
@MarcGravell - удивительный, не знал этого. Мы создали причудливую обертку над Dapper на моей работе (которую мы внутренне называем DapperWrapper, ха-ха), и он предлагает операции CRUD. У нас не было необходимости в объемных вставках/обновлениях/upserts, поэтому мы не сопоставляли этот метод. Хорошая вещь! – Haney