1. The left bracket () must be written using XML escape syntax (i.e. <).
2. Generic type arguments can not be fully assembly qualified as the comma is used to separate generic type arguments.
A generic object definition might look like this:
<object id="myFilteredIntList" type="GenericsPlay.FilterableList<int>, GenericsPlay">
<property name="Name" value="My Integer List"/>
</object>
Note the use of <.
In the case of item 2 above it is suggested you use type aliases to clarify the text:
<typeAliases>
<alias name="GenericDictionary" type=" System.Collections.Generic.Dictionary<,>" />
</typeAliases>
<object id="myGenericObject"
type="GenericsPlay.ExampleGenericObject<GenericDictionary<int , string>>, GenericsPlay" />
type="GenericsPlay.ExampleGenericObject<GenericDictionary<int , string>>, GenericsPlay" />
instead of:
<object id="myGenericObject"
type="GenericsPlay.ExampleGenericObject<System.Collections.Generic.Dictionary<int , string>>, GenericsPlay" />
Yuk.
See section 5.2.6.1 of the Spring.Net documentation for details.