Я хочу, чтобы узнать, имеет ли объект базовый тип (char, int, var, string (это базовый тип в C#?)). Причина этого заключается в том, что я хочу создать парсер, который получает поля объекта, и если он встречается с объектом, он не может получить значение из (если это был другой объект внутри), он будет рекурсивно получать поля там тоже. Так, например:Проверьте, не является ли объект не базовым типом?
for (int x = 0; x < elements.Length; x++)
{
FieldInfo currenField = fields[x];
if (currenField is object) //This doesn't work because its of type "FieldInfo"
{
//pass in the current object into the function
}
else
{
elements[x] = new XElement(currenField.Name, currenField.GetValue(obj).ToString());
}
К сожалению, я не могу найти что-либо в Интернете, это позволит вам легко определить, есть ли его базовый тип. Не возможно также следующее:
currenField.GetType is typeof(object)
TLDR; Я не могу определить, является ли что-то базовым или нет, и я не могу сравнивать типы для получения того же эффекта.
Любая помощь очень ценится!
Для того чтобы мы могли ответить на ваш вопрос, сначала вам нужно объяснить, что вы подразумеваете под «базовым типом». Это не стандартный термин. –
Может быть, базовый тип? – rekire
Правильно, я почему-то положил это, а потом изменил его. Его базовый тип вы правы. –