В настоящее время я работаю над проектом MVC 3, который использует Fluent NHibernate. Я использую перечисление System.DayOfWeek, но при отображении этого я получил следующую ошибку-
Stack Trace:
[MappingException: Could not determine type for: DayOfWeek, for columns: NHibernate.Mapping.Column(WeekStart)]
NHibernate.Mapping.SimpleValue.get_Type() +456
NHibernate.Mapping.SimpleValue.IsValid(IMapping mapping) +40
NHibernate.Mapping.PersistentClass.Validate(IMapping mapping) +123
NHibernate.Mapping.RootClass.Validate(IMapping mapping) +24
NHibernate.Cfg.Configuration.ValidateEntities() +280
NHibernate.Cfg.Configuration.BuildSessionFactory() +43
FluentNHibernate.Cfg.FluentConfiguration.BuildSessionFactory() +54
[FluentConfigurationException: An invalid or incomplete configuration was used while creating a SessionFactory.
Check PotentialReasons collection, and InnerException for more detail.
Version Information: Microsoft.NET Framework Version:4.0.30319; ASP.NET
Version:4.0.30319.272
Пример использования-
Map(x => x.WeekStart).CustomType(typeof(DayOfWeek));
Я видел этот конкретный вопрос, заданный в списках рассылки и в stackoverflow, но его нюансы никогда не были полностью поняты и человек, задающий вопрос, получает информацию о том, как использовать сопоставление пользовательского типа.
Я хорошо знаю, как использовать функциональность пользовательского типа на картах Fluent, и часто ею пользуюсь. Однако я не понимаю, почему это перечисление, в частности, не может быть отображено. Я предполагаю, что это как-то связано с пространством имен System, к которому оно принадлежит?
Если кто-нибудь может пролить свет на это, я был бы очень счастлив.
Спасибо