Frage

Ich möchte eine Kriterien-Abfrage mit lazy many-to-one Assoziationen laufen. Diese Verbände sind als lazy="false" in der HBM gesetzt. Es ist, weil wir es mit Spannung 90% des Projektes verwenden.

Aber es gibt ein paar ‚großen‘ Abfragen, die als lazy="proxy" ausgeführt werden sollen.

HBM:

<many-to-one name="DestinationElement" class="X" column="DstElemId" not-null="true" unique="false" cascade="save-update" outer-join="auto" fetch="select" lazy="false" index="IDX_Ass_DestElem">

Kriterien Setup:

criteria.SetFetchMode("DestinationElement", FetchMode.Lazy);

Es funktioniert die entgegengesetzte Richtung, aber nicht auf diese Weise. Es holt sich eifrig.

Das LOC ist 20K +, und es wäre ein massiver refactor sei es die entgegengesetzte Richtung zu tun.

Wie kann ich diese Kraft nur träge zu holen, wenn ich will, und holen eifrig alle anderen Zeiten?

Vielen Dank im Voraus!

War es hilfreich?

Lösung

lazy="false" in der HBM kann nicht in einer Abfrage außer Kraft gesetzt werden (außer einer schlechten Idee, 99% der Zeit zu sein)

Sie müssen in Ihren Code ändern.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top