2015-10-20 40 views
0

我的應用程序有多個EntityManagers。當我向一個類型,它的偉大工程與第一EntityManger,但與第二EntityManager的,如果我延長了同一類型的我得到這個錯誤:使用多個實體管理器時,Breeze JS中的擴展類型失敗

Error: Metadata query failed for: /mytest/Metadata. Unable to either parse or import metadata: Cannot register the same constructor for MyPart in different metadata stores. Please define a separate constructor for each metadata store.; Server side errors encountered - see the entityErrors collection on this object for more detail(…)

這是什麼意思?我想如何定義單獨的構造函數?

這是怎麼了擴展實體:

entityManager.metadataStore.registerEntityTypeCtor("MyPart", MyPart); 

感謝。

回答

0

當使用multiple EntityManagers時,您應該使用一個MetadataStore並在EntityManagers中共享它。

這樣,您只需要registerEntityTypeCtor一次。

如果您從一個「masterManager」開始並加載/註冊其元數據,那麼您可以使用masterManager.createEmptyCopy()來獲取具有相同MetadataStore的新的空管理器。