Drei Fragen:
Welche Erfahrungen habt ihr mit Stabilität und Performance gemacht(Ist es reif für den Produktionseinsatz???)?
Es ist ein Port von Hibernate, also Java. Ist es mit Java.Net realisiert(oder ne andere .Net Sprache) oder sind auch Module dabei, die die Java Runtime benötigen?
Kann man auch XML-Dateien als Backend nehmen, oder muss es eine DB sein?
Grüße Christoph
Auf http://wiki.nhibernate.org/display/NH/Supported+Databases siehst du alle Datenbanken die unterstützt werden. Ein XML Storage wird daher anscheinend nicht unterstützt.
Ich persönlich kenne Hibernate hauptsächlich von der Javaseite. Unter .NET hab ich mich kurz damit gespielt, habe aber das Gefühl dass es nicht so geschmeidig funktioniert wie unter Java.
Persönlich ist mir nHibernate auch ein wenig zu langsam - jedoch ist das nur mal eine gefühlsmäßige Aussage da ich keine Zeit hatte, einen Performancetest zu machen, wird es sicherlich auch irgendwo im Internet bereits geben.
.NET GUI - Die Community für grafische Oberflächen unter .NET
Jetzt kostenlos besorgen: .NET BlogBook
Norbert Eder
DasBackup
Original von Quallo
Es ist ein Port von Hibernate, also Java. Ist es mit Java.Net realisiert(oder ne andere .Net Sprache) oder sind auch Module dabei, die die Java Runtime benötigen?
Sieh dir mal den Sourcecode an:
http://cvs.sourceforge.net/viewcvs.py/nhibernate/nhibernate/
Eindeutig C#. Soweit ich das sehe wird nirgends die JRE verwendet.
Kann man auch XML-Dateien als Backend nehmen, oder muss es eine DB sein?
Wenn es dafür einen IDriver gibt, geht alles. Es gibt in jedem Fall ADO.NET Provider, die XML wie eine "normale" Datenbank ansprechen können (z.B. hier). Du müsstest also eventuell einen eigenen IDriver implementieren.
Aber das sind alles nur Vermutungen, ich habe NHibernate noch nicht verwendet.
MfG VizOne
Ich bekomme ständig eine Nhibernate.MappingException in der Zeile:
config.AddClass(typeof(mappingtest.Department));
Ich habe eine Eingebettete Resource mit dem Namen mappingtest.Department.hbm.xml (ohne mappingtest auch schon versucht), aber er sagt immer, dass er die nicht finden kann.
Vorschläge?
Wahrscheinlich hast du einen Standardnamespace in den Projektsettings gesetzt. Dann fügt VS den vor den Namen jeder Resource, also z.B. Standardnamespace.mappingtest.Department.hbm.xml, und NHibernate kann die Resource nicht mehr finden.
MfG VizOne
Danke für die Hilfe!
Es lag daran, dass ich die Dateien mit der Endung .hbm.xml nicht im gleichen Ordner wie die Klassen hatte.
Grüße Christoph
Original von VizOne
Wahrscheinlich hast du einen Standardnamespace in den Projektsettings gesetzt. Dann fügt VS den vor den Namen jeder Resource, also z.B. Standardnamespace.mappingtest.Department.hbm.xml, und NHibernate kann die Resource nicht mehr finden.
MfG VizOne
Hallo,
ich habe derzeit genau das selbe Problem das NHibernate mein Mappingfile nicht findet...Die dazugehörige Klasse sowie das Mappingfile liegen im Projektroot und auch da umbennen von von Zug.hbm.xml in Standardnamespace.Zug.hbm.xml haben haben nicht geholfen 🤔 auch absolute pfade haben nichts gebracht.
ich konfiguriere nhibernate in einem seperaten xml-file (hibernate.cfg.xml)
<?xml version='1.0' encoding='utf-8'?>
<hibernate-configuration xmlns="urn:nhibernate-configuration-2.0">
<!-- an ISessionFactory instance -->
<session-factory>
<!-- properties -->
<property name="connection.provider">NHibernate.Connection.DriverConnectionProvider</property>
<property name="connection.driver_class">NHibernate.Driver.SqlClientDriver</property>
<property name="connection.connection_string">Server=DAVETEST\SQLEXPRESS;initial catalog=NHibernateTestDB;User Id=davesql;Password=qwert;</property>
<property name="show_sql">true</property>
<property name="dialect">NHibernate.Dialect.MsSql2000Dialect</property>
<property name="use_outer_join">true</property>
<!-- mapping files-->
<mapping resource="Zug.hbm.xml" assembly="SO_DAL" />
</session-factory>
</hibernate-configuration>
hat jemand nen heißen tipp wo mein fehler liegt?