That's correct, yes. Your entities should never actually know about your IUserType's.
On Tue, Jul 21, 2009 at 11:05 PM, Chris Fazeli <[email protected]> wrote: > > I think I figured it out. > > I had: > public class Contact : IEntityWithTypeId<Guid> > { > ... > public virtual Url PictureUrl { get; set; } // DB column has the > same name > ... > } > > But I'm supposed to have: > public virtual Uri PictureUrl (not Url PictureUrl). If I understand > correctly, the Url : IUserType is not supposed to be used as the > object type in my Contact class. It's only meant to tell NH how to map > Uri to a string in the DB. I'll rename my classes accordingly. > > > On Jul 21, 4:05 pm, Chris Fazeli <[email protected]> wrote: > > Hi, > > > > I am trying to use Jakob Andersen's URI custom UserType in my > > application: > http://intellect.dk/post/Implementing-custom-types-in-nHibernate.aspx > > > > I have read these two posts: > http://wiki.fluentnhibernate.org/show/AutoMappingTypeConventionshttp://groups.google.com/group/fluent-nhibernate/browse_thread/thread. > .. > > > > Yet, I cannot get this to work. I don't need the Url to map to a > > specific column in a specific table. I just want the Automapper to > > decipher all Url types to Db.String type whenever it sees property > > names that match in the model and DB table. According to the Wiki > > pages, I shouldn't even have to override the UserTypeConvention<Url>? > > I did just for completeness. > > > > I have: > > namespace MyProject.Core.CustomTypes { public class Url : > > IUserType ... } > > > > namespace MyProject.Data.NHibernateMaps.Conventions > > { > > public class UrlTypeConvention : UserTypeConvention<Url> > > { > > public override void Apply(IProperty target) > > { > > base.Apply(target); > > } > > } > > > > } > > > > private Action<IConventionFinder> GetConventions() > > { > > return c => > > { > > c.Add<PrimaryKeyConvention>(); > > ... > > c.Add<UrlTypeConvention>(); > > }; > > > > } > > > > public class Contact : IEntityWithTypeId<Guid> > > { > > ... > > public virtual Url PictureUrl { get; set; } // DB column has the > > same name > > ... > > > > } > > > > But everytime I run my test to confirm the DB matches the mappings, > > the tests fail to run because the project can't initialize, with the > > error: > > An association from the table Contacts refers to an unmapped class: > > MyProject.Core.CustomTypes.Url > > > > I can fix this by creating a mapping override for my Contact entity, > > but this seems cumbersome. > > > > Any ideas what I'm doing wrong? > > > > Cheers, > > - Chris > > > --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Fluent NHibernate" group. To post to this group, send email to [email protected] To unsubscribe from this group, send email to [email protected] For more options, visit this group at http://groups.google.com/group/fluent-nhibernate?hl=en -~----------~----~----~----~------~----~------~--~---
