Frage

Hat jemand versucht, die Active Intro Probe mit C # 3.5? Ich habe irgendwie das Gefühl, dass die Probe vollständig falsch ist oder einfach nur veraltet. Die XML-Konfiguration ist einfach falsch:

<add key="connection.connection_string" value="xxx" />

sollte:

<add key="hibernate.connection.connection_string" value="xxx" />

(wenn ich die nhibernate Konfigurationssyntax richtig verstehen ..)

Ich frage mich, was ich falsch mache. Ich erhalte eine Ausnahme „konnte nicht ExecuteQuery für Benutzer ausführen“, wenn Count () auf dem Benutzermodell aufrufen.

Keine Ahnung, was das sein kann. Das Tutorial Quelle unterscheidet sich stark von der Quelle auf der Seite (vor allem in der XML-Konfiguration), und es ist ein VS2003 Probe mit unterschiedlichen Syntax auf die meisten Dinge (keine Generika usw.).

Irgendwelche Vorschläge? Active sieht genial ..

War es hilfreich?

Lösung

(Dies war zu lang für einen Kommentar post)

[@ Tigraine] Aus Ihren Kommentaren zu meiner vorherigen Antwort sieht es aus wie der Fehler nicht mit der Konfiguration liegt, sondern bei einem Ihrer Einheiten. Entfernen der „Ruhezustand“ korrigiert, um die Konfiguration so, dass es Ihnen die wirklichen Fehler Geve, die, dass das Unternehmen „Post“ zu sein scheinen, ist nicht richtig zugeschrieben für Active seiner Zuordnung zu erstellen.

Wenn Sie weiter unten in den Fehlern, die es gibt, hat es wahrscheinlich einige Details darüber, was über „Post“ ist fehlgeschlagen.

Einige allgemeine Dinge umfassen:

  • Die Klasse hat nicht das [ActiveRecord] Attribut.
  • Es gibt keine Eigenschaft mit dem [PrimaryKey] Attribute.
  • Es gibt keinen passenden Tisch "Post" (oder "Beiträge", wenn PluralizeTableNames ist "true") genannt wird.
  • Es gibt keine passende Spalte (n) für zugeschrieben Eigenschaften.
  • Ihre zugeschrieben Eigenschaften und öffentliche Methoden sind nicht virtual (dieses tötet mich die ganze Zeit).

Andere Tipps

Der ‚Winterschlaf‘ Teil des Schlüssels wurde in NHibernate Version 2.0 entfernt. Diese Version ist korrekt für NHibernate 2.0 ab:

<add key="connection.connection_string" value="xxx" />

Edit: Ich sehe, dass der Schnellstart nicht mit den Binärdateien für Schloss und NHibernate kommt. Sie müssen die Binärdateien von irgendwo heruntergeladen haben; es wäre hilfreich, wenn Sie die Versionsnummer Ihrer NHibernate.dll Datei zur Verfügung stellen könnten.

Verwirrend, zumindest einige der quickstart aktualisiert wurde mit NHibernate (NH) 2,0, aber die neueste ‚richtige‘ Castle Release ist immer noch der 1.0 RC3 (fast ein Jahr alt geworden) Strom zu sein, die nicht enthalten NH 2.0.

Sie können in zwei Richtungen gehen. Sie können mit Schloss RC3 und in diesem Fall fortsetzen Sie wird in der Tat das hinzufügen müssen, um Ihre Konfigurationseinträge ‚überwintern‘ prefix. Oder Sie können eine zu bauen, die gegen NH laufen sollte 2,0. Das Problem mit diesem Ansatz ist, dass einige der anderen Bruch Änderungen in NH eingeführt 2.0 möglicherweise nicht in dem Schnellstart festgelegt werden.

Löschen Sie den „hibernate.“ -Teil für alle Konfigurationseinträge. Ihr erstes Beispiel ist die richtige ist.

scroll top