Я пишу простой List<t>
в CSV конвертер.Мой конвертер проверяет все t
в Списке и захватывает все общедоступные свойства и помещает их в CSV.
Мой код прекрасно работает (как и предполагалось), когда вы будете использовать простой класс с несколькими свойствами.
Я хотел бы получить преобразователь List<t>
в CSV, чтобы он также принимал типы систем, такие как String и Integer.С этими типами систем я не хочу получать их общедоступные свойства (такие как длина, символы и т. Д.).Таким образом, я хотел бы проверить, является ли объект системным типом.Под типом системы я подразумеваю один из встроенных типов .Net, таких как string, int32, double
и т. Д.
Используя GetType (), я могу найти следующее:
string myName = "Joe Doe";
bool isPrimitive = myName.GetType().IsPrimitive; // False
bool isSealed = myName.GetType().IsSealed; // True
// From memory all of the System types are sealed.
bool isValueType = myName.GetType().IsValueType; // False
// LinqPad users: isPrimitive.Dump();isSealed.Dump();isValueType.Dump();
Как найтиесли переменная myName является встроенной системой типа?(при условии, что мы не знаем его строку)