Я пытаюсь добавить новую запись в DataTable
после загрузки ее с информацией, содержащейся в IDataReader
объекте, DbDataReader
конкретно. Загрузка идет нормально, и запрос к базе данных правильный, я думаю.
При попытке добавить новую строку я получаю ArgumentException
со следующей информацией:
Cannot set column 'ID'. The value violates the MaxLength limit of this column.
Это код, который у меня сейчас есть:
// Build the query:
DbCommand cmd = dbCon.CreateCommand();
cmd.CommandText = "SELECT ID, Name || ' ' || SurName AS FullName FROM Clients ORDER BY FullName;";
// Execute it:
DbDataReader reader = cmd.ExecuteReader();
// Construct the table out of the query result:
DataTable table = new DataTable();
table .Load(reader);
table.Rows.Add(0, "None");
В базе данных (SQLite) ID
имеет тип INTEGER
, и оба Name
и SurName
имеют значение VARCHAR
с. Я делаю что-то неправильно? Как 0
может нарушить ограничение MaxLength?