Dapperを使用してSQLiteデータベースに対して単純なCRUD操作を実行しようとしていますが、コンパイラがエラーを非難しているため、修正方法がわからないため、問題が発生しています。
質問のエラーは「conn.Execute...」行にあり、次のように表示されます。
C#:いくつかのメソッドが'(string、DBManager。(anonymous))'に適用できます:'Dapper.SqlMapper.Execute(System.Data.IDbConnection、string ,, System.Data.IDbTransaction、int?、System.Data.CommandType? )'および'Dapper.SqlMapper.Execute(System.Data.IDbConnection、string、、System.Data.IDbTransaction、int?、System.Data.CommandType?)'DBManager.cs
以下は私のコードです。私はここに、あまり多くを入れずに、見るのに役立つと思うすべてのものを入れようとしています。
using System;
using System.Linq;
using Dapper;
public bool Insert(SchedulerHistory record)
{
int res = -1;
if (record == null)
return false;
try
{
//var db = new SQLDatabase();
string sqlquery = "insert into SchedulerHistory (JobId, NextJob, LastJob, ExecuteOnStart) Values (@JobId, @NextJob, @LastJob, @ExecuteOnStart);";
using (var conn = new System.Data.SQLite.SQLiteConnection(m_connString))
{
conn.Open();
conn.Execute (sqlquery, new { JobId = record.JobId, NextJob = `record.NextJob, LastJob = record.LastJob, ExecuteOnStart = record.ExecuteOnStart });`
return (res > 0);
}
}
catch (Exception ex)
{
LogWriter.Error(ex);
return false;
}
}
「Dapperを使用する」ことに注意してください。はVS2012で使用されていないものとしてマークされており、その方法は実行されていません。dapperが役立つと思ったので、以前に実行した方法を採用していました。