2009-08-31 8 views
8

Estoy usando NHibernate HiLo como mi generador de identidades. Actualmente tengo una tabla separada en mi base de datos para cada una de las tablas de mi entidad. Por ejemplo, tengo la tabla CustomerKey y CustomerKey, cada una con una columna NextHiLo.NHibernate HiLo - una tabla para todas las entidades

Lo que sería genial tener es una sola tabla que tenga la clave para todos los demás. Idealmente sería si pudiera tener una tabla como la siguiente:

TableName | NextHiLo 
Customer | 19 
Invoice | 5 
Receipt | 3 

Si isnt't que es posible con NHibernate, la segunda mejor opción sería:

CustomerHiLo | InvoiceHiLo | ReceiptHiLo 
19 | 5 | 3 

es cualquiera de los dos opciones anteriores Posible lograr - el guión de generación de esquema producido por NHibernate no parece apoyar ninguno de ellos?

+0

Sé que esta pregunta es antigua, pero ¿cómo resolviste esto? Estoy tratando de resolver el mismo problema. Intenté tu primer acercamiento con solo 2 columnas, pero parece que mis identificadores son continuos en varias tablas. –

Respuesta

12

¿Ha intentado utilizar la propiedad where del generador de hilos? Algo así como:

<class name="Customer"> 
    <id name="Id"> 
     <generator class="hilo"> 
      <param name="where">TableName = 'Customer'</param> 
      ... 
     </generator> 
    </id> 
    ... 
</class> 
Cuestiones relacionadas