Я создал поле как BLOB. Однако, увидев результаты вашего предложения о том, что GetFieldType является System.String, я не уверен. Я использую аддон SQLite Manager FireFox для менеджера, и он сообщает content как BLOB.
.NET и менеджер SQLite, похоже, конфликтуют. Я могу правильно сохранить файл из диспетчера, чтобы знать, что он правильно хранится - он просто читает его в моем приложении.
размер файла - это текстовое поле, я просто быстро добавил его, чтобы попытаться отладить все это, и я планирую изменить его рано или поздно.
Проблема с размером действительно удивляет меня, но я не могу ее объяснить (вот почему я здесь :) Я не могу определить, каков точный предел размера, но я знаю, что это приведет к ошибке с файлом это всего 34 КБ. Ниже приводится копия созданного мной отчета об исключении.
Произошла ошибка: 13:36 1/4/2009
HelpLink:
InnerException:
Сообщение:
«емкость» должна быть больше нуля.
Наименование параметра: емкость
Источник:
mscorlib
StackTrace:
в System.Text.StringBuilder..ctor (строковое значение, int32 startIndex, длина Int32, емкость Int32)
в System.Text.StringBuilder..ctor (строковое значение, емкость Int32)
в System.Data.Odbc.OdbcDataReader.internalGetString (Int32 i)
в System.Data.Odbc.OdbcDataReader.GetValue (Int32 i, карта типов TypeMap)
в System.Data.Odbc.OdbcDataReader.GetValue (Int32 i)
в System.Data.Odbc.OdbcDataReader.get_Item (строковое значение)
в AppEx.Data.DatabaseHandler.SaveBinaryFile (ключ строки) в ... \ Data \ DatabaseHandler.cs: строка 249
TargetSite:
Void .ctor (System.String, Int32, Int32, Int32)