[NHibernate] Engine faalt op Nullables

Pagina: 1
Acties:

  • pjonk
  • Registratie: November 2000
  • Laatst online: 22-11 20:39
Ik heb een vrij lastig probleem met NHibernate. De NHibernate engine genereert zelf code en compileert deze naar IL on the fly. Dit gaat fout bij Nullable Types.
code:
1
2
t.ServicekostenbtwTarief = values[0] == null ? new System.Double() : (System.Double)values[0];
t.DatumOndertekeningAkte = values[1] == null ? new System.Nullable`1[[System.DateTime, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]]() : (System.Nullable`1[[System.DateTime, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]])values[1];

De onderste regel met new System.Nullable`1 klopt natuurlijk niet
Ik krijg dan ook onderstaande compile error te zien in de log:
code:
1
2
2007-06-18 10:39:31,541 DEBUG Compiled with error:
2007-06-18 10:39:31,541 DEBUG Line:16, Column:69 Message:Unexpected character '`'

Hebben er mensen ervaring met dit probleem? Ik gebruik NHibernate versie 1.0.4

It’s nice to be important but it’s more important to be nice


  • whoami
  • Registratie: December 2000
  • Laatst online: 00:54
Tja, je gebruikt dan ook al een hele oude versie van NHibernate.
Ondertussen bestaat NHibernate 1.2.0 al, die nullables ondersteunt. (Ik denk dat alle versies ervoor geen support hadden voor nullable types)

(Welke code is dat die door nhibernate trouwens gegenereerd wordt ? )

[ Voor 15% gewijzigd door whoami op 18-06-2007 11:54 ]

https://fgheysels.github.io/


  • Woy
  • Registratie: April 2000
  • Niet online

Woy

Moderator Devschuur®
Idd ik gebruik ook NHibernate in een project en heb totaal geen probleem met nullables. Denk dus dat je een nieuwere versie moet gaan gebruiken.

“Build a man a fire, and he'll be warm for a day. Set a man on fire, and he'll be warm for the rest of his life.”


  • pjonk
  • Registratie: November 2000
  • Laatst online: 22-11 20:39
Klopt we gebruiken een verouderde versie. Dit heeft te maken met de omvang van de applicatie en de start van het project (april 2006). Een upgrade 1.2.0 is dus helaas niet iets wat we zo even kunnen doen.
Maar ik zie overigens nu dat deze fouten niet leiden tot ERROR's en FATAL's maar als DEBUG worden gelogd en de applicatie wel gewoon doorstart.
Binnenkort maar eens met NHB 1.2.0 gaan spelen :)

It’s nice to be important but it’s more important to be nice