Hi all:
I am writing a native C/C++ .dll program which calls to .dll functions of many third party C/C++ libraries and returns a c/c++ structure array (SA) of 18 columns by 0-n lines. This returned value is then captured by a WCF C# web service program which "interop" with my .dll and, using .net xml library, serialize the result before sending the message to the web service client.
I can see an overhead here: (a) prepare data in C/C++ to populate the SA before returning and, (b) serialize that SA into XML once it is received by the C# web service program.
To avoid this overhead I think that instead of populating the SA in my C/C++ dll, I should populate into a XML-serialized string or file, then return this result to the C# web service program which will only send the already serialized data directly to the client.
At this point I would like to know:
1) If my thought is correct.
2) If yes, apart from populating data into XML I would also like to include -as a header- the name of the columns, lenghts and datatypes. Somebody said me that I should create an XSD string/file for describing that header. What do you think about this?
3) What kind of things should I consider into the C# program for not having problems with the returning XML data? XSD data?
Thanks for your courtesy in reading this.