Ausführen von VS2003, nHB 3.0.0.3001, Versuch, einen Komponententest durch Gallio 3.2 auszuführen. Der Code stammt aus der ersten Sitzung von "Summer of nHibernate". Beim Versuch, den Test auszuführen, erhalte ich den folgenden Fehler.
%Vor%Meine sehr ungebildete Vermutung ist, dass die Kundenklasse nicht gesehen werden kann. Sowohl der Komponententest als auch die Datenzugriffsschichten haben jedoch einen Verweis auf die DataTransfer-Assembly, die die Customer-Klasse enthält. Die Customer-Klasse ist öffentlich und alle Eigenschaften sind öffentlich virtuell.
Die nHB-Konfigurationsdatei befindet sich im Verzeichnis und die Kundenzuordnungsdatei ist eine eingebettete Ressource. Scheint auf dem zu scheitern Linie:
%Vor%Stellen Sie sicher, dass Ihre Zuordnungsdatei den Namen * .hbm.xml
Stellen Sie sicher, dass es auf eine eingebettete Ressource eingestellt ist.
Wenn diese fehlschlagen, debuggen und wenn es fehlschlägt, fangen Sie die Ausnahme ab und schauen Sie sich die InnerException an - NHibernate hat dort eine fantastische Fehlermeldung versteckt.
Hoffen Sie, dass diese Thigs helfen - ansonsten können wir uns einige andere Optionen ansehen (aber 1 und 2 lösen 90% der persistierenden Probleme)
Ich benutze ActiveRecord für die Entity-Mapping, bekomme den gleichen Fehler, wenn ich versucht habe, ISession.Get zu verwenden, anstatt die Konfiguration zum Abrufen der Sitzung zu verwenden, wie folgt:
%Vor%Ich habe es so geändert, dass es mit ActiveRecordMediator funktioniert:
%Vor%jetzt funktioniert es großartig ..
Fügen Sie diesen Code in Ihrer Datei hibernate.cfg.xml hinzu:
%Vor%Grundsätzlich, auf Ihrem Code ist es:
%Vor%Tags und Links nhibernate