Articles of nhibernate

NHibernate: Razones para anular Iguales y GetHashCode

¿Hay alguna razón por la cual Equals o GetHashCode se deben anular en las entidades cuando se usa NHibernate? ¿Y en qué escenarios son válidos estos motivos? Algunas razones que se pueden encontrar en la web: Soporte para carga lenta. La comparación de objetos proxy a través del método Equals predeterminado puede generar errores inesperados. […]

Cómo salvar a un niño con identificación asignada en nhibernate

Tengo dos clases: public class Parent { public virtual long? ID { get; set; } // native public virtual IList Children { get; set; } public virtual string Name { get; set; } } public class Child { public virtual long ID { get; set; } // assigned public virtual string Name { get; set; […]

Configuración NHibernate para una relación uni-direccional de uno a muchos

Estoy tratando de establecer una relación de la siguiente manera. Cada elemento maestro tiene uno o más elementos de detalle : public class Detail { public virtual Guid DetailId { get; set; } public virtual string Name { get; set; } } public class Master { public virtual Guid MasterId { get; set; } public […]

¿Cómo crear declaraciones OR para NHibernate?

Al crear un criterio para NHibernate, todos los criterios se agregan como AND . Por ejemplo: session.CreateCriteria(typeof(someobject)) .Add(critiera) .Add(other_criteria) entonces el resultado final será SELECT … FROM … WHERE criteria **AND** other_criteria Me gustaría decirle a NHibernate que agregue los criterios como “OR” SELECT … FROM … WHERE criteria **OR** other_criteria Cualquier ayuda es apreciada

Auditoría de datos en NHibernate y SqlServer

Estoy usando NHibernate en un proyecto y necesito hacer una auditoría de datos. Encontré este artículo en codeproject que analiza la interfaz de IInterceptor. ¿Cuál es su forma preferida de auditar datos? ¿Utiliza desencadenadores de base de datos? ¿Utiliza algo similar a lo que se dice en el artículo?

No se puede convertir el objeto de tipo NHibernate.Collection.Generic.PersistentGenericBag en List

Tengo una clase llamada ReportRequest como: public class ReportRequest { Int32 templateId; List entityIds; public virtual Int32? Id { get; set; } public virtual Int32 TemplateId { get { return templateId; } set { templateId = value; } } public virtual List EntityIds { get { return entityIds; } set { entityIds = value; } […]

¿Cuál debería ser la duración de una sesión de NHibernate?

Soy nuevo en NHibernate y he visto algunos problemas al cerrar sesiones prematuramente. Lo he resuelto temporalmente reutilizando sesiones en lugar de abrir una sesión por transacción. Sin embargo, tenía la impresión de que las sesiones de apertura cada vez que las necesitaban eran el enfoque recomendado para la gestión de la vida de la […]

NHibernate.MappingException: No persister para: XYZ

Ahora, antes de decirlo: hice Google y mi archivo hbm.xml es un recurso incrustado. Aquí está el código que estoy llamando: ISession session = GetCurrentSession(); var returnObject = session.Get(Id); Aquí está mi archivo de mapeo para la clase: ¿Alguien ha corrido este problema antes? Aquí está el mensaje de error completo: MappingException: No persister para: […]

NHibernate – CreateCriteria vs CreateAlias

Suponiendo el siguiente escenario: class Project{ public Job Job; } class Job{ public Name; } Asumiendo que quiero usar la API Criteria para buscar todos los proyectos cuyo trabajo tiene el nombre “sumthing”. Podría usar CreateAlias ​​para crear un alias para Job y usarlo para acceder a Name, o podría crear un nuevo Criterio para […]

Progtwigción de interfaces al mapear con Fluent NHibernate

He sido catapultado y he comenzado a aprender Fluidez NHibernate (ninguna experiencia anterior de NHibernate). En mi proyecto, estoy progtwigndo interfaces para reducir el acoplamiento, etc. Eso significa que prácticamente “todo” se refiere a la interfaz en lugar del tipo concreto (IMessage en lugar de Message). La idea detrás de esto es ayudar a que […]