在 Unity 中重命名序列化自动属性

Hou*_*elo 2 c# serialization rename properties unity-game-engine

我有一个在检查器上序列化的自动属性,我需要在不丢失序列化值的情况下重命名它,通常我会使用 [FormerlySerializedAs(previousName)] 属性,问题是它不适用于自动属性,有人对此有任何见解吗?

我的代码:

public class Test : MonoBehaviour
{
    [field: SerializeField]
    [field: FormerlySerializedAs("previousName")]
    public Transform FieldIWantToRemainSerialized { get; private set; }
}
Run Code Online (Sandbox Code Playgroud)

小智 5

有点晚了,但也许有人会发现有用,你需要使用这个:

[field: FormerlySerializedAs("<previousName>k__BackingField")]
Run Code Online (Sandbox Code Playgroud)