Rekon1602 Geschrieben 10. August 2011 Geschrieben 10. August 2011 Hallo. ich entwickle ein Programm weiter, welches über das NHibernate-Framework auf eine MSSQL-Datenbank zugreift. Nun hab ich das Problem, dass mir das NHibernate-Framework eine Exception wirft. Ich hab auch schon die Stelle im Code ausgemacht, die für die Exception verantwortlich ist. Wenn ich bei nachfolgendem Code, die auskommentierten Zeilen einkommentiere, dann tritt der Fehler auf, ansonsten funktioniert der Code. Map(folder => folder.Flags, "Statusflags"); Map(folder => folder.SearchTerm, "Suchbegriff") .Not.Nullable(); //MapAny(folder => folder.Parent, "Parent_ID", "EintragArt") // .AddMetaValue<Folder>() // .AddMetaValue<Project>(); Die Exception, die ich bekomme lautet: {"could not execute query\r\n[ SELECT this_.ID as ID29_0_, this_.EintragArt as EintragArt29_0_, this_.Parent_ID as Parent3_29_0_, this_.ErstellungDatum as Erstellu4_29_0_, this_.LetzteAenderungDatum as LetzteAe5_29_0_, this_.ErstellungBen as Erstellu6_29_0_, this_.LetzteAenderungBen as LetzteAe7_29_0_, this_.RechteFlags as RechteFl8_29_0_, this_.NurSichtbarFuer_ID as NurSicht9_29_0_, this_.Statusflags as Statusf10_29_0_, this_.Suchbegriff as Suchbeg11_29_0_ FROM DokumentBaum this_ ]\r\n[sql: SELECT this_.ID as ID29_0_, this_.EintragArt as EintragArt29_0_, this_.Parent_ID as Parent3_29_0_, this_.ErstellungDatum as Erstellu4_29_0_, this_.LetzteAenderungDatum as LetzteAe5_29_0_, this_.ErstellungBen as Erstellu6_29_0_, this_.LetzteAenderungBen as LetzteAe7_29_0_, this_.RechteFlags as RechteFl8_29_0_, this_.NurSichtbarFuer_ID as NurSicht9_29_0_, this_.Statusflags as Statusf10_29_0_, this_.Suchbegriff as Suchbeg11_29_0_ FROM DokumentBaum this_]"} Wenn ich mir von der InnerException den StackTrace anschaue steht da folgendes: bei System.ThrowHelper.ThrowKeyNotFoundException() bei System.Collections.Generic.Dictionary`2.get_Item(TKey key) bei NHibernate.Type.MetaType.NullSafeGet(IDataReader rs, String name, ISessionImplementor session, Object owner) bei NHibernate.Type.AnyType.Hydrate(IDataReader rs, String[] names, ISessionImplementor session, Object owner) Ich hab auch schon versucht den, durch NHibernate erzeugen, Query direkt im SQL-Server Management Studio auszuführen, und da funktioniert alles, wenn ich "[" und "]" entferne. Ich denke mal, dass es daran aber nicht liegt. [ SELECT this_.ID as ID29_0_, this_.EintragArt as EintragArt29_0_, this_.Parent_ID as Parent3_29_0_, this_.ErstellungDatum as Erstellu4_29_0_, this_.LetzteAenderungDatum as LetzteAe5_29_0_, this_.ErstellungBen as Erstellu6_29_0_, this_.LetzteAenderungBen as LetzteAe7_29_0_, this_.RechteFlags as RechteFl8_29_0_, this_.NurSichtbarFuer_ID as NurSicht9_29_0_, this_.Statusflags as Statusf10_29_0_, this_.Suchbegriff as Suchbeg11_29_0_ FROM DokumentBaum this_ ] Wenn ich den Query im Management Studio ausführe, sieht das Ergebnis wie im Anhang dargestellt aus. Was auch ok ist. Meine Frage ist nun also: Was mache ich falsch? Warum funktioniert es nicht? Ich benötige die beiden auskommentierten zeilen.
Rekon1602 Geschrieben 10. August 2011 Autor Geschrieben 10. August 2011 Hab den Fehler mittlerweile gefunden. Für diejenigen, die es interessiert: Im Mapping von NHibernate hat einen Entität gefehlt. Nachfolgende Zeile hat das Problem gelöst. .AddMetaValue<Contact>()
Empfohlene Beiträge
Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren
Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können
Benutzerkonto erstellen
Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!
Neues Benutzerkonto erstellenAnmelden
Du hast bereits ein Benutzerkonto? Melde Dich hier an.
Jetzt anmelden