<?xml version="1.0" encoding="utf-8" ?>
<?xml-stylesheet type="text/xsl" href="RSS_xslt_style.asp" version="1.0" ?>
<rss version="2.0" xmlns:WebWizForums="http://syndication.webwiz.co.uk/rss_namespace/">
 <channel>
  <title>DevForce Community Forum : Deleted child entity not represented on another client</title>
  <link>http://www.ideablade.com/forum/</link>
  <description>This is an XML content feed of; DevForce Community Forum : DevForce 2012 : Deleted child entity not represented on another client</description>
  <pubDate>Mon, 13 Apr 2026 14:04:05 -700</pubDate>
  <lastBuildDate>Tue, 03 Sep 2013 11:55:03 -700</lastBuildDate>
  <docs>http://blogs.law.harvard.edu/tech/rss</docs>
  <generator>Web Wiz Forums 9.69</generator>
  <ttl>360</ttl>
  <WebWizForums:feedURL>www.ideablade.com/forum/RSS_post_feed.asp?TID=4299</WebWizForums:feedURL>
  <image>
   <title>DevForce Community Forum</title>
   <url>http://www.ideablade.com/forum/forum_images/IdeaBlade_logo_tm.png</url>
   <link>http://www.ideablade.com/forum/</link>
  </image>
  <item>
   <title>Deleted child entity not represented on another client : Unfortunately, DevForce does not...</title>
   <link>http://www.ideablade.com/forum/forum_posts.asp?TID=4299&amp;PID=16796#16796</link>
   <description>
    <![CDATA[<strong>Author:</strong> <a href="http://www.ideablade.com/forum/member_profile.asp?PF=11" rel="nofollow">kimj</a><br /><strong>Subject:</strong> 4299<br /><strong>Posted:</strong> 03-Sep-2013 at 11:55am<br /><br />Unfortunately, DevForce does not handle many-to-many relations well.&nbsp; Each entity does keep an internal ManyToManyChangeMap which contains information on all m-m relations, but this map is not publicly available, and even if it were, quite abstruse in how it's used.&nbsp; There's probably not a reliable way to detect these changes on your server, but if you do see unchanged entities in the save interceptor prior to execution of the save, they will be part of an m-m relation. <DIV></DIV><DIV></DIV><DIV>&nbsp;</DIV><DIV>For m-m relations only, doing a clear on the navigation property, eg, A.Bs.Clear(), prior to the load or re-query should work.</DIV>]]>
   </description>
   <pubDate>Tue, 03 Sep 2013 11:55:03 -700</pubDate>
   <guid isPermaLink="true">http://www.ideablade.com/forum/forum_posts.asp?TID=4299&amp;PID=16796#16796</guid>
  </item> 
  <item>
   <title>Deleted child entity not represented on another client : Thanks for your quick reply. Now...</title>
   <link>http://www.ideablade.com/forum/forum_posts.asp?TID=4299&amp;PID=16795#16795</link>
   <description>
    <![CDATA[<strong>Author:</strong> <a href="http://www.ideablade.com/forum/member_profile.asp?PF=1927" rel="nofollow">John</a><br /><strong>Subject:</strong> 4299<br /><strong>Posted:</strong> 03-Sep-2013 at 5:31am<br /><br />Thanks for your quick reply.<br />Now I see that it does work with 1:N relation (while using EntityReferenceLoadStrategy.Load), but not in N:N relation between A and B.<br />That means, if client1 performs a.Bs.Remove(b) and client2 loads A.Include(Bs), it still gets all the Bs, i.e. the stolen entity remain in its cache.<br />As a workaround, I thought to use save interceptor on the server, detect the changes and publish to the clients the entity keys that have to be re-fetched;<br />But in N:N relation I found no indication to the removal. A and B are at unchanged state, and the linking table is abstracted away as we know.<br />There must be some indication in EntityManager to entity removal in N:N relation. What is it?<br />Or should I take a different approach?]]>
   </description>
   <pubDate>Tue, 03 Sep 2013 05:31:12 -700</pubDate>
   <guid isPermaLink="true">http://www.ideablade.com/forum/forum_posts.asp?TID=4299&amp;PID=16795#16795</guid>
  </item> 
  <item>
   <title>Deleted child entity not represented on another client : The somewhat harder to use RefetchEntities...</title>
   <link>http://www.ideablade.com/forum/forum_posts.asp?TID=4299&amp;PID=16793#16793</link>
   <description>
    <![CDATA[<strong>Author:</strong> <a href="http://www.ideablade.com/forum/member_profile.asp?PF=11" rel="nofollow">kimj</a><br /><strong>Subject:</strong> 4299<br /><strong>Posted:</strong> 02-Sep-2013 at 1:37pm<br /><br />The somewhat harder to use RefetchEntities will retrieve the entity graph and remove the stale entities.&nbsp; I think of it as harder to use because you must pass it the entities to refetch, but you can use FindEntityGraph if you can't easily build up the list.<DIV>&nbsp;</DIV><DIV>The ListReference.Load call <EM>should</EM> also work:&nbsp; A.Bs.ListReference.Load(mergeStrategy).</DIV>]]>
   </description>
   <pubDate>Mon, 02 Sep 2013 13:37:09 -700</pubDate>
   <guid isPermaLink="true">http://www.ideablade.com/forum/forum_posts.asp?TID=4299&amp;PID=16793#16793</guid>
  </item> 
  <item>
   <title>Deleted child entity not represented on another client : Hello. I use DevForce 2012 in...</title>
   <link>http://www.ideablade.com/forum/forum_posts.asp?TID=4299&amp;PID=16792#16792</link>
   <description>
    <![CDATA[<strong>Author:</strong> <a href="http://www.ideablade.com/forum/member_profile.asp?PF=1927" rel="nofollow">John</a><br /><strong>Subject:</strong> 4299<br /><strong>Posted:</strong> 02-Sep-2013 at 9:38am<br /><br />Hello.<br />I use DevForce 2012 in a distributed system using several Windows clients and a server.<br />Suppose the model has 2 entities with 1:N relation, A and B. A has a collection of 3 B's (navigation prop).<br />Each client loads A and all its B's using include list.<br />One client deletes one child B and saves changes to the server.<br />Then another client re-queries A.Inlude(Bs) using DataSourceOnly strategy.<br />Unfortunately, the other client still gets A with 3 B's rather than only 2 ones. <br />I also tried EntityReferenceLoadStrategy.Load and explicit Load() via EntityMetadata.<br />I understand it's because the deleted B remains in the cache of the other client; But I expect that the explicit load will remove it from there.<br />A total cache clear is not an option to me, and a manual removal for each such scenario is tedious.<br />Any ideas?]]>
   </description>
   <pubDate>Mon, 02 Sep 2013 09:38:50 -700</pubDate>
   <guid isPermaLink="true">http://www.ideablade.com/forum/forum_posts.asp?TID=4299&amp;PID=16792#16792</guid>
  </item> 
 </channel>
</rss>