Код: Выделить всё
abssssssssssssssssssssssssd RRRRRRRRRRRRRRRAAAAAAAAAAAAAAAąąąąąąąąąąąąąąąąąąąąąąąąąąąąąąąąąąąąąąąąąąąąąąąąąąąąąąąąąąąąąąąąąąąąąąąąąąąąąąąąąąąąąąąąąąąąąąąąąassssssssssssssssss ansssssssssssssssssssssssssssssssssssssssssssssssssssssss ssssssssssssssssssssss
Код: Выделить всё
const string lengthCheckSql = @"SELECT LENGTH(:valueToCheck) as charCount FROM DUAL";
var result = _session.CreateSQLQuery(lengthCheckSql)
.AddScalar("charCount", NHibernateUtil.Int32)
.SetString("valueToCheck", valueToCheck)
.UniqueResult();
В конце, когда я вызываю Save из объекта ISession, я получаю исключение из база данных, которая ,,valueToCheck" имеет большую длину, разрешенную в базе данных;
,,(текущее: 352, разрешено: 255)"
Когда я меняю ,ą' на ,a ', тогда все работает нормально.
Я пытаюсь найти, в чем проблема: Nhibernate по умолчанию преобразует некоторые символы в другой Юникод, который моя база данных позволяет использовать?
Подробнее здесь: https://stackoverflow.com/questions/790 ... t-contains