Question: I've got a directory where people submit data. It's stored and pending while it's moderated to make sure it's o.k.

Once approved I'd like another couple of sites that I control and a few I won't (on different servers) to be able to grab that data. This would be on a cron or something so there wouldn't be any human interaction. Moderation is fully dependent on that first moderation.

How do I go about doing this securely.

I've thought about grabbing it as rss, parsing and storing. I've thought about doing soap requests, grabbing xml files, etc....

What would YOU do?

Answer: 
Unfortunately this is not possible with config files, at least not in a reliable fashion. 

The reason is that if you have a generic class `class A<T>` and a class parameter `class B` the framework will not create a the class `A<B>` until you declare a type of `A<B>` by using it. The name in the format A`1[[B, Assm]] is just the name that gets created at run time - it means the generic "A" that takes 1 parameter created with the following types. It is not a cue to a type factory - which is what you need for what you are doing. So you *might* be able to get this to work *if* you are lucky and `A<B>` happens to have been declared, but I would not rely on it. 

This is, I believe, fixed in the data contract serialization that is used by later parts of the framework, but config is old. If you look at XAML there is the ability to use a type arguments with a type:

```
<scg3:Dictionary x:TypeArguments="x:String, x:Object">

```

Note this is an Explicit instruction to a type factory - something that the config parser does **not** have.

So sadly this leaves you with the expense of declaring a concrete type for each extension - but it is not a lot of work :

```
public class MyBehaviorExtensionElement : 
         SimpleBehaviorExtensionElement<MyBehavior> {}

```

And on the plus side it makes your config file more readable. 

```
<behaviorExtensions>
  <add name="myBehavior" 
    type="BehaviorTest.MyBehaviorExtensionElement, ServiceLibrary"/>      
</behaviorExtensions>

```
Yes, it is possible.

I guess the reason the exception is getting thrown is because of way behavior elements are added [WCF extensions without including the assembly version](https://stackoverflow.com/questions/1716399/wcf-extensions-without-including-the-assembly-version).

When specifying the type of the behavior, **Version**, **Culture** and **PublicKeyToken** attributes **MUST** be added as well. Please also note that there **MUST** be exactly one space after each , (comma), and the attributes **MUST** appear in aforementioned order.

So, in your example, following should work:

```
 <behaviorExtensions>
    <add name="myBehavior2"
         type="WcfService1.SimpleBehaviorExtensionElement`1[[WcfService1.MyBehavior, WcfService1, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null]], WcfService1" />
</behaviorExtensions>

```