в настоящий момент я использую ExpandoObject для динамического хранения имени и фамилии.
например,
// Create Expando object for testing
dynamic employee = new ExpandoObject();
// Dynamically add the fields to the expando
((IDictionary<String, Object>)employee).Add("FirstName", "John");
((IDictionary<String, Object>)employee).Add("Surname", "Smith");
Мне было интересно, можно ли динамически сохранять поля в древовидной структуре, чтобы у меня было родительское поле с именем Name, а затем два дочерних поля с именем Firstname и Surname. В идеале это могло бы быть расширено, чтобы включить больше подуровней. Я' Я написал немного кода psudo ниже, чтобы в идеале продемонстрировать, как я хочу, чтобы он работал. (конечно, этот код в настоящее время вызывает ошибки)
// Create Expando object for testing
dynamic employee = new ExpandoObject();
// Dynamically add the Name
((IDictionary<String, Object>)employee).Add("Name", "");
//Dynamically add the firstname and surname to employee.Name
((IDictionary<String, Object>)employee.Name).Add("FirstName", "John");
((IDictionary<String, Object>)employee.Name).Add("Surname", "Smith");