Если вы используете XML в качестве метаданных, и ваши метаданные относительно статичны (например, FieldName = X, DataType = Y и т. Д.) И не должны расширяться во время выполнения, Вы можете рассмотреть XmlSerialization и иметь дело с результирующими объектами в коде.
Сделав оба подхода, я могу честно сказать, что работа с объектно-безопасными объектами намного чище, чем переплетение бизнес-логики и логики синтаксического анализа. Это, как говорится, не будет работать (или вам придется перепрыгивать через некоторые обручи), если вам нужна расширяемость во время выполнения.
Если ваши метаданные изменяются редко , вы можете даже захотеть рассмотреть некоторую форму генерации кода вместо построения динамической формы.
Относительно ответа Ауксона, YMMV с вариантами третьей стороны. У меня были некоторые, которые отлично работают OOTB, экономя мне много времени, и другие, где я потратил столько же времени на настройку и настройку, чтобы получить результаты, которые не совсем то, что я хотел бы, так как я бы сам его построил. В зависимости от того, насколько важна эта функция для вашего приложения, вы можете рассмотреть возможность развертывания своей собственной, если начнете видеть, что адаптация сторонней среды становится большой задачей разработки.