Prácticas recomendadas para unirse a los servicios de membresía / rol / perfil de nhibernate y ASP.NET

Tengo una aplicación genérica ASP.NET (MVC), que utiliza NHibernate como la capa de persistencia del modelo, y los servicios de Membresía / rol / perfil de ASP.NET como la capa de administración de usuarios.

La pregunta es qué se puede considerar como la mejor práctica para crear vínculos entre los datos del dominio y los usuarios. (Por ejemplo, si quiero crear un sistema de foro, quiero vincular cada tema / publicación a un usuario específico y quiero mostrar al usuario en cada solicitud).

Estas son las posiciones en las que he estado pensando:

Almacene el ID de usuario en NHibernate (como tener una columna Guid en todas sus clases de dominio (Publicaciones, Temas, etc.) que necesita hacer referencia a un Usuario) y use GetUser cada vez que necesite el nombre del usuario de la guía (lo que podría resultar) en n + 1 consultas)

Variante B: también puede almacenar el nombre de usuario.

Utilice la misma base de datos y cree un Usuario de dominio de objeto NHibernate de solo lectura, que se asigna a los mismos datos que los servicios M / R / P.Olvídese de M / R / P y cree un servicio de administración de usuarios por separado basado en NHibernateOlvídate de ambos y usa J2EE / RoR / merb / DJango / etc. (por favor no elija esta opción :))otro...

Respuestas a la pregunta(3)

Su respuesta a la pregunta