В настоящее время я использую 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и фамилияВ идеале это может быть расширено, чтобы включить больше подуровней.Я сделал некоторый псевдокод ниже, чтобы идеально продемонстрировать, как я бы хотел, чтобы он работал.(конечно, этот код в настоящее время вызывает ошибки)
// 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");