Я недавно обновил NH2.1 до последней сборки ствола. Я также обновил до последнего исходного кода Fluent NHibernate.
Введена новая проблема, которая проявляется в следующем исключении:
System.Data.SqlClient.SqlException: The incoming tabular data stream (TDS) remote procedure call (RPC) protocol stream is incorrect. Parameter 3 ("@p0"): Data type 0xE7 has an invalid data length or metadata length.
Мои беглые отображения приводят к следующему hbm xml:
<property name="FirstName" type="System.String, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<column name="FirstName" length="4001" />
</property>
Проблема исчезнет , если я использую 'ntext' для получения следующего отображения:
<property name="FirstName" type="System.String, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<column name="FirstName" sql-type="NTEXT" />
</property>
Если честно, я не уверен, кто / что несет ответственность за проблему. Мой инстинкт подсказывает, что это сам NHibernate, и я смог изолировать проблему с этим конкретным сопоставлением свойств (на самом деле в сопоставляемом объекте есть несколько строк max).
Для дальнейшей сложности проблема не отображается при использовании Sqlite, поэтому я предполагаю, что проблема может быть скрыта в диалекте.
(я хочу установить причину проблемы, прежде чем отправлять сообщения в соответствующую группу пользователей)