これは別の場所で扱われていると思ったが、今は見ていない。とにかく、簡単なv3クエリーに問題があります。 SQLite ADO.NETプロバイダ1.0.65.0の使用。私のテーブルの構造は次のようになります。SQLite Int64とInt32の問題とサブソニックActiveRecord
CREATE TABLE "SamplerData" ("RowId" INT PRIMARY KEY NOT NULL ,"SampName" VARCHAR(128),"SampPurpose" VARCHAR(2048),"ActiveState" INTEGER NOT NULL DEFAULT 1)
マイStructs1.csファイルはそれでこれを持っている:
SqlQuery sqlsql = new Select()
.From("SamplerData")
.Where("ActiveState")
.IsEqualTo(1);
List<SamplerDatum> sampAll = sqlsql .ExecuteTypedList<SamplerDatum>();
:
Columns.Add(new DatabaseColumn("RowId", this)
{
IsPrimaryKey = true,
DataType = DbType.Int32,
IsNullable = false,
AutoIncrement = false,
IsForeignKey = false
});
Columns.Add(new DatabaseColumn("SampName", this)
{
IsPrimaryKey = false,
DataType = DbType.AnsiString,
IsNullable = true,
AutoIncrement = false,
IsForeignKey = false
});
Columns.Add(new DatabaseColumn("SampPurpose", this)
{
IsPrimaryKey = false,
DataType = DbType.AnsiString,
IsNullable = true,
AutoIncrement = false,
IsForeignKey = false
});
Columns.Add(new DatabaseColumn("ActiveState", this)
{
IsPrimaryKey = false,
DataType = DbType.Int32,
IsNullable = false,
AutoIncrement = false,
IsForeignKey = false
});
私はこのようになりますWPFの分離コードでクエリを持っています
sqlsqlの値を表示するように設定されたブレークポイントは、これを示します。
{SELECT * FROM `SamplerData` WHERE ActiveState = @0}
そしてコードはでスロー:
{ "タイプのオブジェクトのSystem.Int64 ' 'は可能System.Int32' を型に変換できない。"}
をVisual Studioで "検索" が」なかったのInt64変換がどこで起こっているかを私に見せてください。私は、SQLiteがID列にInt64を使用することを理解していますが、StructsがInt32をInt32に変換しているときにSubSonicが変換を処理している理由/理由はわかりません。
ヘルプ?
おかげ..
Word up。おかげでロブ! – Snowy