Такая ситуация в базе хранятся дни недели в поле типа char(2) ( 'MO', 'TU' и т.д. ).
Единственный способ как описать маппинг для перечисления из другой сборки, который я нашел — это описать его в xml-файле и потом загрузить оттуда. Код xml-файла:
При попытке автоматического маппинга в логи пишется следующее:
Message: Could not create descriptor of the 'ES.EurostudioProject.BusinessLayer.Data.Company.EmployeeScheduleExclusion' type. Invalid cast from System.String to System.DayOfWeek.
InnerExceptionMessage: Invalid cast from System.String to System.DayOfWeek.
Где ступил? Может быть xml'ина схеме не соответствует? Пытался схему отсюда вытащить: http://www.rsdn.ru/mapping.xsd, не получилось
В общем, буду весьма признателен за любые конструктивные советы.
Re: Маппинг System.DayOfWeek
От:
Аноним
Дата:
11.10.05 12:16
Оценка:
Выдрал схему из сборки прописал в файле. Так и есть. Не соответсвует схеме. Пишет
The 'name' attribute is not declared. An error occurred at , (4, 14).
Это здесь:
<value_type name="System.DayOfWeek">
Теперь вопрос — то есть как это аттрибут не объявлен? Написание в схеме проверил — русских букв там нет. В xml-файле тоже написано латиницей. Студия заболтиво подставляет аттрибут 'name' в тэг 'value_type'. В чем дело просто не могу понять
А>Message: Could not create descriptor of the 'ES.EurostudioProject.BusinessLayer.Data.Company.EmployeeScheduleExclusion' type. Invalid cast from System.String to System.DayOfWeek.
А>InnerExceptionMessage: Invalid cast from System.String to System.DayOfWeek.
Странно, а какая строка в исходных данных приезжает. Она точно соответствуюет одной из приведённого списка? Может пустая строка проскакивает?
... << RSDN@Home 1.2.0 alpha rev. 0>>
Если нам не помогут, то мы тоже никого не пощадим.
Здравствуйте, IT, Вы писали:
IT>Здравствуйте, <Аноним>, Вы писали:
А>>
А>>Message: Could not create descriptor of the 'ES.EurostudioProject.BusinessLayer.Data.Company.EmployeeScheduleExclusion' type. Invalid cast from System.String to System.DayOfWeek.
А>>InnerExceptionMessage: Invalid cast from System.String to System.DayOfWeek.
IT>Странно, а какая строка в исходных данных приезжает. Она точно соответствуюет одной из приведённого списка? Может пустая строка проскакивает?
Игорь, все валится вот на этой строчке:
//Rsdn.Framework.Data.Mapping.MappingSchema, метод GetValueAttributeArray, строка 318
target = Convert.ChangeType(target, type);
Здравствуйте, kaer, Вы писали:
K>Игорь, все валится вот на этой строчке:
Я проверил на своих юнит тестах, работает. Сегодня соберу отдельный примерчик, если будет всё работать, то пошлю его тебе разбираться. А пока можно прописать MapValue атибут непосредственно к полю / свойству класса.
Если нам не помогут, то мы тоже никого не пощадим.
Здравствуйте, IT, Вы писали:
IT>Здравствуйте, kaer, Вы писали:
K>>Игорь, все валится вот на этой строчке:
IT>Я проверил на своих юнит тестах, работает. Сегодня соберу отдельный примерчик, если будет всё работать, то пошлю его тебе разбираться. А пока можно прописать MapValue атибут непосредственно к полю / свойству класса.
Спасибо. Можно, например, сюда alex.klimov [at] gmail.com