J'ai récemment mis à jour de NH2.1 à la dernière version de tronc. J'ai également mis à niveau vers le dernier code source de Fluent NHibernate.Fluent NHibernate problème avec nvarchar (max) et SQL Express 2005
Une nouvelle question a été introduite qui se manifeste par l'exception suivante:
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.
Mes applications couramment produisent le xml hbm suivant:
<property name="FirstName" type="System.String, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<column name="FirstName" length="4001" />
</property>
Le problème disparaît si je utilisez 'ntext' pour produire le mappage suivant:
<property name="FirstName" type="System.String, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<column name="FirstName" sql-type="NTEXT" />
</property>
Pour être honnête, je ne sais pas qui/quoi est responsable du problème. Mon instinct suggère que c'est NHibernate lui-même, et j'ai été capable d'isoler le problème à ce mappage de propriétés particulier (en réalité, il existe plusieurs chaînes max dans l'entité en cours de mappage).
Pour plus de complexité, le problème ne le fait pas show lors de l'utilisation SQLite, donc je suppose la question peut être enterré dans le dialecte.
(Je veux établir ce qui est l'origine du problème avant que je poste au groupe d'utilisateurs concerné)
Pour isoler le problème, vous devez revenir à l'état précédent dans lequel vous étiez. Ensuite, déplacez lentement cet environnement vers votre état actuel où il ne fonctionne pas et déterminez quelle partie de la mise à jour a introduit le problème. –