2016-06-24 7 views
0

Alle meine Entitäten wo in einer .jar, weil ich sie in API für eine Webanwendung und Android-Anwendung verwenden müssen.GreenDAO: DAO-Klasse aus vorhandener Entität generieren Ursache Problem mit Beziehung

Nach Forschung, sah ich greenDAO nur DAO-Klasse für meine Einheit erzeugen kann, muß ich nur noch setSkipGeneration(true)

Diese Arbeit fein verwenden, aber ich versuchte, mit 2 Einheiten zu testen, mit einer Eins-zu-viele-Beziehung. Das Problem ist:

Meine Entität A haben einen Verweis auf Entität B, also stelle ich diese Beziehung in meinem DAOGenerator mit addToOne Methode. Aber erzeugt greenDAO Generator diese Methode auf meinem EntityDAO:

@Override 
protected void attachEntity(MyEntity entity) { 
    super.attachEntity(entity); 
    entity.__setDaoSession(daoSession); 
} 

jedoch entity.__setDaoSession(daoSession) unmöglich ist, weil mein Unternehmen ein DaoSession Objekt in seiner Klasse haben muß, aber es ist unmöglich, wie ich am Anfang gesagt.

Ich dachte, ich mache das Richtige, wenn ich setSkipGeneration(true) benutze, aber wahrscheinlich habe ich etwas vergessen, hast du die Antwort auf mein Problem?

Antwort

0

Sie haben Generator aufgefordert, die Convenience-Methoden für Ihre Entität zu erstellen, um die Beziehung zu bearbeiten, addToOne. Diese Methoden benötigen einen DB-Zugriff, der über DaoSession erfolgt. Wenn Sie sich aus irgendeinem Grund DaoSession in der Klasse nicht leisten können, fragen Sie nicht nach Beziehungsmethoden.