К сожалению, параметры не могут использоваться для выражения имен таблиц или столбцов.Вы можете использовать их только для выражения значений в операторе WHERE или в операции UPDATE / INSERT / DELETE.
Поэтому вы должны вставлять свои записи одну за другой или писать код для поддержки пакетных обновлений, как описано в этом вопросе
Однако, если вы хотите поэкспериментировать с очень полезнымиВ сторонней библиотеке вы можете написать очень простой код.
Этот пример сделан с использованием Dapper
NuGet
Сайт проекта
using(SQLiteConnection connection = GetOpenedConnection())
{
string cmdText = @"INSERT OR REPLACE INTO ZZ_DBA_Stop
(Path, StopName, Latitude, Longitude)
VALUES(@Path, @StopName, @Latitude, @Longitude) ";
connection.ExecuteAsync(cmdText, tempResults);
}
Dapper - это простой ORMэто расширяет функциональность IDbConnection.Он знает, как обрабатывать ваши модели, а также сохранять и извлекать их из базы данных.
В приведенном выше примере вы передаете весь список в качестве второго параметра в ExecuteAsync, и Dapper вставит для вас данные из всего списка.Единственное требование здесь состоит в том, чтобы свойства вашей модели имели одинаковые имена полей
GetOpenedConnection - это просто заполнитель для метода, который возвращает уже открытый SQLiteConnection.Вы можете заменить его кодом, необходимым для создания соединения, и добавить вызов для открытия перед вызовом ExecuteAsync