.NET WCF - Update client GUI while server is processing -


i'm newbie when comes client/server app. (i programmed asp.net apps)

i want create application contains of multiple winform clients , .net server (i'm thinking wcf). communication between client , server should on http (port 80).

application scenario:

the client pass keyword server, example 'books'.

the server start 1sec - 10mins process of search matching data based on keyword.

the server find list of results (from 1 result n results).

i client update gui found results while server searching. (not wait until server finished).

my questions are:

is wcf right choice server side?

what kind of wcf protocol? duplex, polling, msmq based?

any links related example code , starter-kit ,etc welcome :)

if you're using wcf, msmq transport layer ("binding" use wcf terminology) , not relevant you're trying here (you choose between netmsmqbinding vs. wshttpbinding vs. nettcpbinding, name few). use either polling or duplex binding, , either valid, although implementation drastically different.

to implement polling approach, recommend using session-based wcf service. session last long hold onto proxy wcf service in client, , keep using same proxy updates on request until comes status of completed. seems straightforward implement both client , service.

using duplex service valid approach, may more complicated implement if you've never worked wcf. duplex service, in definition of servicecontract define callbackcontract, servicecontract service uses send messages client. in case, think want 2 distinct operations in callbackcontract, 1 report each result, , separate 1 indicate results had been retrieved client knows not expect more results , close channel. the msdn documentation on duplex services thorough, there's bit of learning curve wcf.


Comments

Popular posts from this blog

objective c - Change font of selected text in UITextView -

php - Accessing POST data in Facebook cavas app -

c# - Getting control value when switching a view as part of a multiview -