首页 > 解决方案 > 如何生成 guid 并将其分配给变量?

问题描述

using System;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class GenerateState : MonoBehaviour, IStateQuery
{
    private State m_state = new State();
    private Guid guidID;

    private void Awake()
    {
        guidID = Guid.NewGuid();
    }

    public Guid UniqueId => Guid.Parse(guidID.ToString());

    private class State
    {
        // Properties
    }

    public string GetState()
    {
        return JsonUtility.ToJson(m_state);
    }

    public void SetState(string jsonString)
    {
        m_state = JsonUtility.FromJson<State>(jsonString);
    }
}

它确实在 Awake 中生成了一个 guid,但我想在它创建后将 guid 分配给第 16 行的 UniqueId 变量:

public Guid UniqueId => Guid.Parse(guidID.ToString());

但它永远不会得到它。我也在其他脚本中使用 UniqueID,这就是我使用 => 的原因

标签: c#unity3d

解决方案


我想将创建后的 guid 分配给 UniqueId 变量

你是这个意思?

public class GenerateState : MonoBehaviour, IStateQuery
{
    /*
     other implementation 
    */

    private Guid myGuid;
    
    public Guid UniqueId => myGuid = Guid.NewGuid();
}

推荐阅读