Welcome to MSDN Blogs Sign in | Join | Help

Browse by Tags

All Tags » Answers » Channels   (RSS)

Context Channel Shapes

What channels can be used in a context binding? The primary limitation for building a context binding is that the channel stack has to have the right shape. The context exchange protocol used by a context binding requires that the first invoked operation

A Proxy Proxy Factory

I have a system that sometimes uses a fast local object and sometimes needs to communicate over a network. I have built a proxy object that wraps the proxy factory for creating typed proxies together with a proxy factory for creating local objects. Are
Posted by Nicholas Allen | 3 Comments
Filed under: , , ,

Custom Transport Retry Logic

What are the best practices for building retry logic around network transport failures? Let's define some terms first so that we have a common language for communication. I'll say that "retry logic" is any automatically applied compensation activity that
Posted by Nicholas Allen | 6 Comments
Filed under: , ,

Creating Sessions over HTTP

I've got a sessionful contract that I want to use with HTTP. How do I get the HTTP transport to produce a sessionful channel shape? The basic design principle of channels is that they produce whatever channel shape is their natural message exchange pattern.

Interfaces for GetProperty, Part 2

I've done a bit of grouping for the remaining binding elements as there are fourteen non-transport binding elements that I'm covering in this list. I've pointed out the ones that respond to a type with GetProperty on the base class as opposed to repeating

Messaging is not a Transaction

What happens to the messages being transmitted and any unprocessed messages when I call Abort? Do those messages get delivered or do they get discarded? Once you call Abort, the state of any of the network resources involved becomes undefined. What happens
Posted by Nicholas Allen | 1 Comments
Filed under: , ,

Setting the Message Via

Can I write a point-to-point router service by setting the Via property for outgoing messages? Like most things, this is going to depend on the specific behavior of the transport channel you're using, but in general the answer is no. The transport channel

Responding to GetProperty

I've created a custom implementation of GetProperty for my binding but now I'm getting errors when I go to use the channels. Why is the validation for these channels failing? This is an implementation problem that I've talked about in the past. There

Faking Channel Security

I occasionally see people asking how they can fake the security capabilities of a binding. These questions often start off with "I'm getting an error message that a message's required protection level is not being met". Now, I'm not precisely sure why

ListenUriBindingElement

The story from yesterday: there is an important setting for composite duplex that is only settable through the binding context. Unfortunately, proxy clients automatically create and use their own binding context so there is no convenient time to poke

Manually Injecting a ListenUri

The ListenUri is a three-part setting on the BindingContext that gives the server-side address of a connection. The ListenUri has a base and a relative address, plus a mode switch. The mode switch controls whether the uri should be used as-is or whether

Building a Composite Duplex Binding Element

I occasionally get requests to help people build what turns out to be a variation of our CompositeDuplexBindingElement . Composite duplex is just a channel shape changer that supports both reading and writing, and has independence between the connections

Cancelling Streams

A frequently asked question I see is whether it's possible to cancel a streamed operation. The simple answer is that gracefully shutting down a streamed operation requires some work and planning at design time. It's always possible to rudely shut down

Why is the RequestContext Null?

Today's post somehow ended up getting bumped to Sunday. All is well now. Sorry for the late start. In the request/reply model, the RequestContext object is the link between the request that comes in and the reply that goes out. When the server receives
 
Page view tracker