1

int データ型 (Sqlite) の IsValid 列を持つテーブルがあります。そこから選択すると、Dapper は失敗します。

{"列 0 の解析エラー (IsValid=1 - Int32)"} {"指定されたキャストは無効です。"}

どちらが理にかなっていますが、それはかなり一般的なケースでなければなりません-それは説明されるべきではありませんか?

これはコードです:

public void Test()
{
    string conns = @"Data Source=mydbfile.db3;Version=3;";
    string sql = null;
    using (SQLiteConnection connection = new SQLiteConnection(conns))
    {
        connection.Open();
        sql = "INSERT INTO Test (IsValid) VALUES (1)";
        connection.Execute(sql);
        sql = "SELECT * FROM Test";
        var x = connection.Query<Valid>(sql);
    }
}

private class Valid
{
    public bool IsValid { get; set; }
}

テーブルには、int 型の 'IsValid' 列が 1 つあります。

4

0 に答える 0