
开启后,会为Unity工程添加一个EANBLE_CODES宏标签,该按钮也会变成"Remove ENABLE_CODES"

添加宏标签后,必然会触发脚本的编译.
在ET框架BuildHelper.cs中包含一个被标记为[InitializeOnLoadMethod] 的 RegenerateProjectFiles 方法,该特性允许编辑器类方法在Unity加载时被执行.该函数中本质就是调用当前的IDE(代码集成开发环境) 重新生成.csproj文件.

当然脚本编译时必然会触发该函数.
在ET框架中OnGenerateCSProjectProcessor.cs 中包含一个 继承自 AssetPostprocessor的类, 该类中包含了 OnGeneratedCSProject 函数用于在生成.csproj文件时做了一些操作.
主要包括:
对 Unity.Core.csproj 程序集添加 ET框架独有的分析器
在开启ENABLE_CODES时,对 Unity.Hotfix.Codes.csproj、 Unity.Model.Codes.csproj、 Unity.HotfixView.Codes.csproj、 Unity.ModelView.Codes.csproj程序集添加分析器
在未开启ENABLE_CODES时,Unity.Hotfix.csproj、 Unity.Model.csproj、Unity.HotfixView.csproj、 Unity.ModelView.csproj 会引用对应逻辑层代码

但是我始终没有搞懂在没有开启ENABLE_CODES时,Unity.Hotfix.csproj、 Unity.Model.csproj、Unity.HotfixView.csproj、 Unity.ModelView.csproj 会引用Codes中相应代码,要引用他们的原因是什么呢?希望有了解的伙伴们答疑解惑,跪谢!!!!