나는 다른 곳에서 다루어 졌다고 생각했지만 지금은 보지 못했다. 어쨌든 간단한 v3 쿼리에 문제가 있습니다. SQLite ADO.NET 공급자 1.0.65.0 사용. 내 테이블 구조는 다음과 같습니다SQLite Int64 대 Int32 문제 및 SubSonic 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}
,451,515,
그런 다음 코드로 던졌습니다 :
{ ". 유형 'System.Int64'의 목적은 '선택 System.Int32'을 입력 변환 할 수 없습니다"}
A "찾기"비주얼 스튜디오에서 '는 didn를 Int64 변환이 발생한 위치를 알려주십시오. 나는 SQLite가 ID 열에 대해 Int64를 사용하지만 Structs가 Int32를 Int32로 만들 때 SubSonic이 변환을 처리하지 않는 이유는 이해하지 않습니다.
도와주세요!
감사합니다 ..
Word up. 감사합니다 롭! – Snowy