<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:georss="http://www.georss.org/georss" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:media="http://search.yahoo.com/mrss/"
		>
<channel>
	<title>Comments on: Silverlight 2 WCF Polling Duplex Support &#8211; Part 3: The Client</title>
	<atom:link href="http://petermcg.wordpress.com/2008/09/03/silverlight-polling-duplex-part-3-the-client/feed/" rel="self" type="application/rss+xml" />
	<link>http://petermcg.wordpress.com/2008/09/03/silverlight-polling-duplex-part-3-the-client/</link>
	<description>Silverlight, WCF, ASP.NET, AJAX, Graphics, RIA</description>
	<lastBuildDate>Sat, 21 May 2011 12:02:36 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.com/</generator>
	<item>
		<title>By: WCF Duplex client for Silverlight &#171; Web Developer Friend</title>
		<link>http://petermcg.wordpress.com/2008/09/03/silverlight-polling-duplex-part-3-the-client/#comment-497</link>
		<dc:creator><![CDATA[WCF Duplex client for Silverlight &#171; Web Developer Friend]]></dc:creator>
		<pubDate>Thu, 09 Sep 2010 11:01:39 +0000</pubDate>
		<guid isPermaLink="false">http://petermcg.wordpress.com/2008/09/03/silverlight-polling-duplex-part-3-the-client/#comment-497</guid>
		<description><![CDATA[[...] http://petermcg.wordpress.com/2008/09/03/silverlight-polling-duplex-part-3-the-client/ [...]]]></description>
		<content:encoded><![CDATA[<p>[...] <a href="http://petermcg.wordpress.com/2008/09/03/silverlight-polling-duplex-part-3-the-client/" rel="nofollow">http://petermcg.wordpress.com/2008/09/03/silverlight-polling-duplex-part-3-the-client/</a> [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Devs4Devs Presentation &#171; Dario&#39;s Blog</title>
		<link>http://petermcg.wordpress.com/2008/09/03/silverlight-polling-duplex-part-3-the-client/#comment-463</link>
		<dc:creator><![CDATA[Devs4Devs Presentation &#171; Dario&#39;s Blog]]></dc:creator>
		<pubDate>Fri, 26 Feb 2010 09:41:18 +0000</pubDate>
		<guid isPermaLink="false">http://petermcg.wordpress.com/2008/09/03/silverlight-polling-duplex-part-3-the-client/#comment-463</guid>
		<description><![CDATA[[...] Silverlight 2 WCF Polling Duplex Support – Part 3: The Client [...]]]></description>
		<content:encoded><![CDATA[<p>[...] Silverlight 2 WCF Polling Duplex Support – Part 3: The Client [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: PollingDuplexHttpBinding &#8211; Absolute Rubbish &#171; Developer Gripes</title>
		<link>http://petermcg.wordpress.com/2008/09/03/silverlight-polling-duplex-part-3-the-client/#comment-424</link>
		<dc:creator><![CDATA[PollingDuplexHttpBinding &#8211; Absolute Rubbish &#171; Developer Gripes]]></dc:creator>
		<pubDate>Sun, 15 Nov 2009 00:21:24 +0000</pubDate>
		<guid isPermaLink="false">http://petermcg.wordpress.com/2008/09/03/silverlight-polling-duplex-part-3-the-client/#comment-424</guid>
		<description><![CDATA[[...] 2 WCF Polling Duplex Support&#8221; articles: Part 1: Architecture, Part 2: The Server and  Part 3: The Client. For an interface that boils down to 3 methods: Subscribe, Publish and NotifyReceived; and [...]]]></description>
		<content:encoded><![CDATA[<p>[...] 2 WCF Polling Duplex Support&#8221; articles: Part 1: Architecture, Part 2: The Server and  Part 3: The Client. For an interface that boils down to 3 methods: Subscribe, Publish and NotifyReceived; and [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Alexey</title>
		<link>http://petermcg.wordpress.com/2008/09/03/silverlight-polling-duplex-part-3-the-client/#comment-378</link>
		<dc:creator><![CDATA[Alexey]]></dc:creator>
		<pubDate>Tue, 12 May 2009 09:37:33 +0000</pubDate>
		<guid isPermaLink="false">http://petermcg.wordpress.com/2008/09/03/silverlight-polling-duplex-part-3-the-client/#comment-378</guid>
		<description><![CDATA[Is it possible to use PollingDuplex on simple TestPage.html without hosting on some website?
I start &quot;StockClient&quot; in the demo and it crashes:

 An error occurred while trying to make a request to URI &#039;http://localhost:10201/SilverlightStockService&#039;. This could be due to attempting to access a service in a cross-domain way without a proper cross-domain policy in place, or a policy that is unsuitable for SOAP services. You may need to contact the owner of the service to publish a cross-domain policy file and to ensure it allows SOAP-related HTTP headers to be sent. Please see the inner exception for more details.

If I start website &quot;StockClientHost&quot; it works fine.

Thanks]]></description>
		<content:encoded><![CDATA[<p>Is it possible to use PollingDuplex on simple TestPage.html without hosting on some website?<br />
I start &#8220;StockClient&#8221; in the demo and it crashes:</p>
<p> An error occurred while trying to make a request to URI &#8216;http://localhost:10201/SilverlightStockService&#8217;. This could be due to attempting to access a service in a cross-domain way without a proper cross-domain policy in place, or a policy that is unsuitable for SOAP services. You may need to contact the owner of the service to publish a cross-domain policy file and to ensure it allows SOAP-related HTTP headers to be sent. Please see the inner exception for more details.</p>
<p>If I start website &#8220;StockClientHost&#8221; it works fine.</p>
<p>Thanks</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Peter McGrattan</title>
		<link>http://petermcg.wordpress.com/2008/09/03/silverlight-polling-duplex-part-3-the-client/#comment-365</link>
		<dc:creator><![CDATA[Peter McGrattan]]></dc:creator>
		<pubDate>Wed, 01 Apr 2009 23:33:01 +0000</pubDate>
		<guid isPermaLink="false">http://petermcg.wordpress.com/2008/09/03/silverlight-polling-duplex-part-3-the-client/#comment-365</guid>
		<description><![CDATA[Hi Quinton,

Thanks for your comments, if you&#039;ve made it through all four articles you deserve a medal!

The logic that decides whether a new row gets added or an existing row&#039;s cells get updated is in the UpdateStockList method of the client WpfStockClient.StockTicker class.

If a new row is being added to the DataGrid then you are adding a new object to the StockList ObservableCollection instead of updating an existing one.

In the latest code the check performed to determine whether a stock already exists in the collection is as follows:

// Check if this Stock is already in the collection
Stock existing = stockList.FirstOrDefault(s =&gt; s.Symbol == delta.Symbol);

If a match on the symbol is positive then an update of the Ask, Bid and Notes (if the new Notes aren&#039;t null) properties occurs, otherwise an insert occurs; check if this comparison is still valid for your changes.

Best Regards,

Peter]]></description>
		<content:encoded><![CDATA[<p>Hi Quinton,</p>
<p>Thanks for your comments, if you&#8217;ve made it through all four articles you deserve a medal!</p>
<p>The logic that decides whether a new row gets added or an existing row&#8217;s cells get updated is in the UpdateStockList method of the client WpfStockClient.StockTicker class.</p>
<p>If a new row is being added to the DataGrid then you are adding a new object to the StockList ObservableCollection instead of updating an existing one.</p>
<p>In the latest code the check performed to determine whether a stock already exists in the collection is as follows:</p>
<p>// Check if this Stock is already in the collection<br />
Stock existing = stockList.FirstOrDefault(s =&gt; s.Symbol == delta.Symbol);</p>
<p>If a match on the symbol is positive then an update of the Ask, Bid and Notes (if the new Notes aren&#8217;t null) properties occurs, otherwise an insert occurs; check if this comparison is still valid for your changes.</p>
<p>Best Regards,</p>
<p>Peter</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Quinton</title>
		<link>http://petermcg.wordpress.com/2008/09/03/silverlight-polling-duplex-part-3-the-client/#comment-364</link>
		<dc:creator><![CDATA[Quinton]]></dc:creator>
		<pubDate>Wed, 01 Apr 2009 10:49:14 +0000</pubDate>
		<guid isPermaLink="false">http://petermcg.wordpress.com/2008/09/03/silverlight-polling-duplex-part-3-the-client/#comment-364</guid>
		<description><![CDATA[Hi

Excellent series of articles!!!!! Deserves a 10/10 and nothing less!!! I have followed all 4 and chop and changed a bit in a project that I am playing with. 

I have a problem though, I extended the Stock.cs by adding my own property and then added it as a datamember etc. with the highlights etc. When I update my value from the silverlight site (like u did with the add notes function),instead of updating my value, a whole new record gets displayed. I ran a debug on the StockServer and the code there functions correct as the list of stock does not increase, so it must be the client thats somehow thinking its a new record.

What could I possibly be missing?

Thanks
Q]]></description>
		<content:encoded><![CDATA[<p>Hi</p>
<p>Excellent series of articles!!!!! Deserves a 10/10 and nothing less!!! I have followed all 4 and chop and changed a bit in a project that I am playing with. </p>
<p>I have a problem though, I extended the Stock.cs by adding my own property and then added it as a datamember etc. with the highlights etc. When I update my value from the silverlight site (like u did with the add notes function),instead of updating my value, a whole new record gets displayed. I ran a debug on the StockServer and the code there functions correct as the list of stock does not increase, so it must be the client thats somehow thinking its a new record.</p>
<p>What could I possibly be missing?</p>
<p>Thanks<br />
Q</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Al</title>
		<link>http://petermcg.wordpress.com/2008/09/03/silverlight-polling-duplex-part-3-the-client/#comment-356</link>
		<dc:creator><![CDATA[Al]]></dc:creator>
		<pubDate>Tue, 03 Mar 2009 20:57:55 +0000</pubDate>
		<guid isPermaLink="false">http://petermcg.wordpress.com/2008/09/03/silverlight-polling-duplex-part-3-the-client/#comment-356</guid>
		<description><![CDATA[Great example.  However it seems to leak memory, I wan the sample code as is and my IE process memory jump immidiately and keep growing. It seems that the PollingDuplex library has a memory leak.  -Thanks]]></description>
		<content:encoded><![CDATA[<p>Great example.  However it seems to leak memory, I wan the sample code as is and my IE process memory jump immidiately and keep growing. It seems that the PollingDuplex library has a memory leak.  -Thanks</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: luoihocbk</title>
		<link>http://petermcg.wordpress.com/2008/09/03/silverlight-polling-duplex-part-3-the-client/#comment-325</link>
		<dc:creator><![CDATA[luoihocbk]]></dc:creator>
		<pubDate>Thu, 12 Feb 2009 08:02:47 +0000</pubDate>
		<guid isPermaLink="false">http://petermcg.wordpress.com/2008/09/03/silverlight-polling-duplex-part-3-the-client/#comment-325</guid>
		<description><![CDATA[Hi Peter,
I have probleme quen deployed this website to IIS. Other computer not load data. When i run in local http://localhost/Stock/testpage.html, it&#039;s OK. Perhaps other computer not connect to Port server http://localhost:xxxx/StockService open to send data.
You can help me?
Thanks!]]></description>
		<content:encoded><![CDATA[<p>Hi Peter,<br />
I have probleme quen deployed this website to IIS. Other computer not load data. When i run in local <a href="http://localhost/Stock/testpage.html" rel="nofollow">http://localhost/Stock/testpage.html</a>, it&#8217;s OK. Perhaps other computer not connect to Port server <a href="http://localhost:xxxx/StockService" rel="nofollow">http://localhost:xxxx/StockService</a> open to send data.<br />
You can help me?<br />
Thanks!</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Peter McGrattan</title>
		<link>http://petermcg.wordpress.com/2008/09/03/silverlight-polling-duplex-part-3-the-client/#comment-291</link>
		<dc:creator><![CDATA[Peter McGrattan]]></dc:creator>
		<pubDate>Tue, 18 Nov 2008 12:21:02 +0000</pubDate>
		<guid isPermaLink="false">http://petermcg.wordpress.com/2008/09/03/silverlight-polling-duplex-part-3-the-client/#comment-291</guid>
		<description><![CDATA[Hi Robert,

Hopefully I can explain what&#039;s happening here: Polling Duplex and indeed any other duplex support in WCF does not automatically push messages to all connected clients, this has to be done manually.

With the WCF service in the polling duplex sample from this blog a new instance of StockService is created per session (i.e. for each Silverlight client that connects to the PollingDuplexHttpBinding WCF endpoint a new instance of StockService is instantiated).  Each session registers it&#039;s interest in the DeltaReceived event of the singleton StockGenerator class in the body of the Register method.  The event is raised approx every 250 milliseconds and the session&#039;s handler (OnDeltaReceived) sends the delta &lt;em&gt;to its respective client only&lt;/em&gt; via the stored channel reference.

With multiple clients there are multiple sessions and so multiple instances of StockService but only one instance of the singleton StockGenerator class where the stock deltas are generated.

Hope this helps,

Peter]]></description>
		<content:encoded><![CDATA[<p>Hi Robert,</p>
<p>Hopefully I can explain what&#8217;s happening here: Polling Duplex and indeed any other duplex support in WCF does not automatically push messages to all connected clients, this has to be done manually.</p>
<p>With the WCF service in the polling duplex sample from this blog a new instance of StockService is created per session (i.e. for each Silverlight client that connects to the PollingDuplexHttpBinding WCF endpoint a new instance of StockService is instantiated).  Each session registers it&#8217;s interest in the DeltaReceived event of the singleton StockGenerator class in the body of the Register method.  The event is raised approx every 250 milliseconds and the session&#8217;s handler (OnDeltaReceived) sends the delta <em>to its respective client only</em> via the stored channel reference.</p>
<p>With multiple clients there are multiple sessions and so multiple instances of StockService but only one instance of the singleton StockGenerator class where the stock deltas are generated.</p>
<p>Hope this helps,</p>
<p>Peter</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Robert</title>
		<link>http://petermcg.wordpress.com/2008/09/03/silverlight-polling-duplex-part-3-the-client/#comment-283</link>
		<dc:creator><![CDATA[Robert]]></dc:creator>
		<pubDate>Thu, 13 Nov 2008 10:51:03 +0000</pubDate>
		<guid isPermaLink="false">http://petermcg.wordpress.com/2008/09/03/silverlight-polling-duplex-part-3-the-client/#comment-283</guid>
		<description><![CDATA[Hi Peter,

Thank you very much for posting this example.  It runs as you described when I open a Firefox browser and IE browser, and register changes for the Notes, it changes on both browsers.  I tried running a modified version of your example, using a WCF Service for the Polling &quot;server&quot; instead of a console app like you did.  I basically send a message to the duplex, the duplex responds to the client, and I have a popup come up on the client, showing the response from the duplex.  And for some reason, in my version with the WCF Service, the duplex only responds to the particular client that sent the message, not the other client(s).  For example, if I send a message from Firefox, I get a popup response from the duplex service, but the popup does not show up in the IE browser.  The reverse is also true.  Is it possible that running this using a WCF Service instead of a console app could cause this discrepancy?  I thought all clients connected to the service should receive any message that the duplex sends out (such as when the &quot;Notes&quot; get modified in your example)?

Thanks,
Robert]]></description>
		<content:encoded><![CDATA[<p>Hi Peter,</p>
<p>Thank you very much for posting this example.  It runs as you described when I open a Firefox browser and IE browser, and register changes for the Notes, it changes on both browsers.  I tried running a modified version of your example, using a WCF Service for the Polling &#8220;server&#8221; instead of a console app like you did.  I basically send a message to the duplex, the duplex responds to the client, and I have a popup come up on the client, showing the response from the duplex.  And for some reason, in my version with the WCF Service, the duplex only responds to the particular client that sent the message, not the other client(s).  For example, if I send a message from Firefox, I get a popup response from the duplex service, but the popup does not show up in the IE browser.  The reverse is also true.  Is it possible that running this using a WCF Service instead of a console app could cause this discrepancy?  I thought all clients connected to the service should receive any message that the duplex sends out (such as when the &#8220;Notes&#8221; get modified in your example)?</p>
<p>Thanks,<br />
Robert</p>
]]></content:encoded>
	</item>
</channel>
</rss>
