Following the example in the help for the generic List class, which
shows the Serializable attribute being used on the generic class, like so:
[SerializableAttribute]
generic<typename T>
public ref class List : IList<T>, ICollection<T>,
IEnumerable<T>, IList, ICollection, IEnumerable
I try to do the same for my own generic class, like so:
[System::SerializableAttribute]
generic <typename T>
public ref class AClass
{
// Lots of goodies
};
only to be met with compiler error:
error C2059: syntax error : 'generic'
on line 2. If I remove the [System::SerializableAttribute] , all is
well, but naturally I want it so that my class can be serialized.
What is the magic incantation <g> to get this to work properly ? I have
tried a number of different variations without getting this to work, so
evidently my genii is on vacation.
Chris Taylor - 01 Apr 2007 15:32 GMT
Hi,
Put the attribute after the generic declaration ie.
generic<typename T>
[SerializableAttribute]
public ref class List : IList<T>, ICollection<T> ...
Hope this helps

Signature
Chris Taylor
http://dotnetjunkies.com/weblog/chris.taylor
> Following the example in the help for the generic List class, which shows
> the Serializable attribute being used on the generic class, like so:
[quoted text clipped - 23 lines]
> tried a number of different variations without getting this to work, so
> evidently my genii is on vacation.
Ben Voigt - 02 Apr 2007 20:00 GMT
> Hi,
>
[quoted text clipped - 5 lines]
>
> Hope this helps
This is clearly a documentation bug at
http://msdn2.microsoft.com/en-us/library/skef48fy.aspx
>> Following the example in the help for the generic List class, which shows
>> the Serializable attribute being used on the generic class, like so:
[quoted text clipped - 23 lines]
>> tried a number of different variations without getting this to work, so
>> evidently my genii is on vacation.