2013-05-15 48 views
2

當我嘗試保存sqlite.net一個模型,它有一個int[]財產,我得到以下異常:Sqlite.NET不知道int []?

System.NotSupportedException: Don't know about System.Int32[]

這個預期?我該如何保存 - 確實應該可以做到這一點?

+1

什麼是數據庫中的字段類型,不感興趣? –

+5

你知道一個數組有數組的數據庫嗎? –

+0

好點@RaphaëlAlthaus - 我沒有想到這個權利! – iwayneo

回答

3

每SQLite的source code at GitHub,SQLite.NET僅支持以下幾種類型:

  • 布爾
  • 字節
  • UINT16
  • UInt32的
  • 的Int64
  • 十進制
  • 字符串
  • 爲SByte
  • 的Int16
  • 的Int32
  • 日期時間
  • 字節[]
  • 的Guid
  • 枚舉

整數數組中不支持(也不我希望它能......可以真的把它變成一個blob)

+0

好吧,如果你決定序列化格式是什麼,你可以保存爲一個blob ... –

+0

@DonalFellows:我想你可以,但它是「SQLite」,所以我期望一個基本的實現。甚至可能對他們實施太不自然。我已經將對象序列化到Java中的數據庫,但不是使用C#和Java,它只是一個巨大的字符串。 – 2013-05-15 21:18:02

1

你可以使用byte []類型來存儲int32 []類型。只需將每個int分成4個字節值;)