Показать сообщение отдельно
Старый 07.06.2021, 12:47   #5  
oleggy is offline
oleggy
Участник
 
256 / 36 (2) +++
Регистрация: 03.12.2019
Адрес: Россия
Подскажите, а как получить Enum текстовое описание C# которое ассоциировано в значением Enum в C# ?
Указал место в коде ниже.

Я так понял метод CLRInterop::getAnyTypeForObject просто тупо конвертирует значение Enum C# в текст не преобразуя его в строковое значение (как это происходит в C#)

X++:
System.IO.DriveInfo[]   allDrives_Net;
System.IO.DriveInfo     currDrive_Net;
Counter i;
Counter size;
str _str;

str strNet2str(System.String _str_Net)
{
	if (!CLRInterop::isNull(_str_Net))
		return CLRInterop::getAnyTypeForObject(_str_Net);
	return '';
}
;

allDrives_Net = System.IO.DriveInfo::GetDrives();
size = allDrives_Net.get_Length();

for (i = 0; i <= size - 1; i++)
{
	currDrive_Net = allDrives_Net.GetValue(i);

	print strFmt("Drive %1", strNet2str(currDrive_Net.get_Name()));
	print strFmt("  Drive type: %1", strNet2str(currDrive_Net.get_DriveType())); // вот тут будет возвращено строка в виде цифры а не текста Enum C#
}
pause;

Последний раз редактировалось oleggy; 07.06.2021 в 12:50.