My application receives strings that represent objects. I have to parse the strings to get the property values for the object I'm creating. Each object will have to know the specifics about how many attributes there are, what each attribute means, etc. However, I want to avoid having each class know about how to parse the string. I'd rather pass each individual object a more fitting data structure (like a dataset or XML)...something easier to populate its properties with.
Is there anything built in to the .NET framework that is suited for this type of thing? Or should I create my own container object?
ADD:
I don't think I explained my question well enough initially. Here's an example to clarify.
Let's say my program is always passed a string of characters that represents a data table in Wiki syntax. Something like:
{||Client:||ABC|-|Contact:||Joe Smith|-|Current revision:||1.0||}
I don't want each one of my specific wiki table objects (e.g., ClientContactTable, CustomerOrderTable, etc.) to know how to parse out | and - and }. So I'd like to write 1 chunk of code that parses the string into some "middle" tier object that I can pass to the constructor of each specific Wiki table object.
My question is: what should that middle tier object be?