Greetings. I’m using dynamic generated enums to laverage the EnumField with the following code
private Enum GenerateTempEnum(string[] fields, string name)
{
if (fields.Length == 0)
{
return null;
}
AssemblyName aName = new AssemblyName("TempEnumAssembly");
AssemblyBuilder ab = AppDomain.CurrentDomain.DefineDynamicAssembly(aName, AssemblyBuilderAccess.ReflectionOnly);
ModuleBuilder mb = ab.DefineDynamicModule(aName.Name, aName.Name + ".dll");
EnumBuilder eb = mb.DefineEnum(name, TypeAttributes.Public, typeof(int));
for (int i = 0; i < fields.Length; i++)
{
string f = fields[i];
eb.DefineLiteral(f, i);
}
Type enumType = eb.CreateType();
Enum tempEnum = (Enum)Enum.ToObject(enumType, 0);
return tempEnum;
}
The enum is generated correctly but when I initialize the EnumField Unity crashes completely
Enum tempEnum = GenerateTempEnum(_propertiesNames, "EnumProperties");
_myEnumField.Init(tempEnum);
This used to work in 2019.1. Now I’m using 2019.3.0f3