Согласно документам MSDN свойство / атрибут DbType типа / элемента Column используется только для создания базы данных.
Тем не менее, сегодня, когда я пытался отправить данные в столбец IMAGE в базе данных SQLCE (не уверен, если только в CE), я получил исключение «Данные усечены до 8000 байт». Это произошло из-за того, что DbType по-прежнему определяется как VARBINARY (MAX), который SQLCE не поддерживает. Изменение типа на IMAGE в DbType устраняет проблему.
Итак, какие еще сюрпризы преподносят атрибуты Linq2SQL? Это ошибка или это задумано? Я должен сообщить об этом в MS?
ОБНОВЛЕНИЕ
Получив ответ от Guffa, я проверил его, но, похоже, для NVARCHAR (10) добавление строки длиной 11 символов вызывает исключение SQL, а не Linq2SQL.
The data was truncated while converting from one data type to another.
[ Name of function(if known) = ]
A first chance exception of type 'System.Data.SqlServerCe.SqlCeException'
occurred in System.Data.SqlServerCe.dll