I have produced a custom class serializer for a sole class contained in 'VcdcClassStructure.dll' using sgen
as-per the documentation. The documents now state that all I need to do is
Add assembaly references to both 'VcdcClassStructure.dll' and the sgen-generated 'VcdcClassStructure.XmlSerializers.dll'.
Add references to the namespace that contains the newly generated serialization classes via
using VcdcClassStructure; using Microsoft.Xml.Serialization.GeneratedAssembly;`
(I have confirmed that the namespaces are correct using DotPeek).
I have then changed my code from
XmlSerializer serializer = new XmlSerializer(typeof(message));
serializer.Serialize(writer, vcdMsg);
to
messageSerializer serializer = new messageSerializer();
serializer.Serialize(writer, vcdMsg);
but on compilation I am getting
The type or namespace name 'VcdcClassStructure' could not be found (are you missing a using directive or an assembly reference?)
and
The type or namespace name 'Xml' does not exist in the namespace 'Microsoft' (are you missing an assembly reference?)
I have reference the relevant assemblies and added the using
code for the namespace. Why is the compiler complaining about these references?
Thanks for your time.
Edit. To prove that I have not missed any of the steps above.
I've checked, and the process described works correctly. I would have to assume, therefore, that you've made an error in the steps. It works fine (note: the type I created in the library was
SomeType
, hence the names):You might want to try going through the steps again.