2013-04-04 41 views
1

當我創建新實體並設置其導航屬性,然後拒絕父項保留到空白實體的更改時。在拒絕更改之前,是否需要從父項中明確刪除新實體?我沒有明確地將其添加到父級,我只是設置了新實體的父級ID。拒絕更改不會從父項刪除實體

回答

1

拒絕新實體上的更改只會丟棄實體 - 使其實體狀態「分離」。在這種情況下,任何與父母有關的孩子都會受到困擾,即他們沒有父母。

換句話說,由於父母的拒絕改變,Breeze不會撥打rejectChanges對任何孩子。這是故意的。

所以你最好的選擇是致電rejectChanges對孩子們。如果他們自己是新的實體,他們也會變得分離,否則他們的父母會回覆到以前的任何一個實體。

請注意,您可以使用EntityManager.getEntities方法返回指定的entityTypes和entityStates的所有實體。這對確定要「回滾」的實體很有用。

查看Entity Manager getEntities method

+0

謝謝,對不起,花了這麼長的時間回覆。你的回答非常有幫助。 – Eric 2013-04-10 16:30:59