2010-08-16 6 views
0

J'utilise ActiveRecord/NHibernate pour le mappage ORM dans mon projet avec PostgreSQL 8.4. je suit numéroProblème DateHeure ActiveRecord/NHibernate

Pour la cartographie de classe

[ActiveRecord(Schema = "public", Table = "test_bean")] 
public class TestBean 
{ 
    [PrimaryKey(SequenceName = "test_bean_id_seq", Generator = PrimaryKeyType.Sequence)] 
    public int ID { get; set; } 

    [Castle.ActiveRecord.Property("time")] 
    public DateTime Time { get; set; } 
} 

et SQL DDL

CREATE TABLE test_bean 
(
    id serial NOT NULL, 
    time timestamp without time zone NOT NULL, 
    CONSTRAINT test_bean_pk PRIMARY KEY (id) 
) 

Lorsque j'enregistre des objets dans DB ActiveRecord/NHibernate tronque/ignore millisecondes composante du DateTime champ. J'ai fait quelques recherches et trouvé ceci post mais je préférerais la solution qui n'exige pas l'écriture du type fait sur commande.

+0

BTW vous pouvez faire ces propriétés virtuelles pour permettre le chargement paresseux –

Répondre

2

Utilisez un Timestamp type NHibernate (similar question, docs)

[Property(ColumnType = "Timestamp")] 
DateTime Time {get;set;}