При a Type в С# есть свойство IsClass, но как решить, что Type является структурой?
Хотя IsValueType является необходимым условием, этого явно недостаточно. Для int также используется тип значения.
Кто-то предлагает следующий код:
bool IsStruct = type.IsValueType && !type.IsEnum && !type.IsPrimitive;
Но я не уверен, является ли он точным методом. Формула должна указывать разницу между структурными и другими типами, такими как DateTime, int и array s.
Как некоторые друзья указали, что здесь я имею в виду определяемую пользователем структуру, а не предопределенные типы, такие как DateTime.