У меня проблемы с Subsonic 3.0, генерирующим объект для таблицы, которая содержит новый тип данных HeirachyID. Из того, что я обнаружил, нет соответствующего типа .Net, и дозвуковой, похоже, не знает, как обращаться с данными иерахиида.
Ошибка, которая выдается:
Объект типа «Microsoft.SqlServer.Types.SqlHierarchyId» не может быть преобразован в тип «System.String».
Код:
foreach (MyDB.DataAccess.ThingCategory tc in DataAccess.ThingCategory.Find(x => x.fk_Thing.Equals(thingId)))
{
sb.AppendFormat("<{0}>{1}</{0}>", wrapTag, tc.Categories.ToList<DataAccess.Category>()[0].Name);
}
tc.Categories.ToList () генерирует ошибку
В качестве альтернативы я попытался обойти это, написав sproc для возврата столбца hierachyid в виде строки, и заметил, что sprocs SubSonic 3.0 не являются строго типизированными. или я что-то не так делаю?