Utilizzando dapper, come è possibile inserire un database C# List
nel database. Precedentemente senza dapper Ho utilizzato il codice seguente per inserire i valori di Elenco nel database.Come inserire un elenco C# nel database utilizzando 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
}
ho familiarità con il recupero dei dati utilizzando azzimato ma questo è il mio primo tentativo utilizzando Query inserto.
Ho provato il codice seguente, utilizzando Exceute
collegato alla query ma bloccato con il ciclo; Penso che usando lo strumento dapper, non ci sia bisogno di istruzioni di looping.
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; }
}
Si prega di consigli su questo. FYI: Sto usando SQL Server 2008
Grazie in anticipo.
In realtà, fatto poco noto: Dapper si iterare * per voi *; quello centrale può essere: 'connection.Execute (" INSERT INTO PROCESS_LOGS VALUES (@A, @B) ", processList);' –
@DavidH Ho pensato che non ci sarebbe bisogno di cicli? – Praveen
@MarcGravell - fantastico, non lo sapevo. Abbiamo creato un elegante wrapper su Dapper nel mio lavoro (che internamente chiamiamo DapperWrapper, haha) e offre operazioni CRUD. Non abbiamo avuto bisogno di inserimenti/aggiornamenti/ups in blocco, quindi non abbiamo mappato il metodo. Roba buona! – Haney